[{"data":1,"prerenderedAt":4787},["ShallowReactive",2],{"wiki-page-\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0500-ji-cheng":3,"wiki-doc-items-2023-10-05-cplusplus-jiao-xue":4226,"wiki:author-members":4775},{"id":4,"title":5,"authors":6,"body":8,"chapterDepth":66,"chapterOrder":4214,"date":4215,"description":58,"docKey":4216,"docRoot":4217,"docTitle":4218,"extension":4219,"isWikiDoc":572,"isWikiIndex":4220,"meta":4221,"navigation":572,"path":4222,"seo":4223,"stem":4224,"wikiDepth":66,"__hash__":4225},"wiki\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1400-0500-继承.md","继承",[7],"董佳辉",{"type":9,"value":10,"toc":4211},"minimark",[11,14,21,24,31,34,37,41,44,47,52,891,896,904,909,1459,1463,1468,1473,1476,1479,1482,1485,1491,1494,1497,1500,1506,1511,1524,1529,1534,2024,2033,2036,2039,2043,2220,2225,2231,2234,2240,2243,2246,2249,2255,2261,2264,2267,2270,2274,2516,2520,2526,2531,2534,2537,2545,2549,2930,2934,2940,2942,2954,2957,2960,2963,2969,2973,3494,3498,3504,3509,3512,3518,3524,3527,3532,3536,3870,3874,3880,3885,3888,3893,3896,3899,3902,3907,3913,3918,3931,3935,4187,4191,4197,4199,4207],[12,13,5],"h3",{"id":5},[15,16,17],"p",{},[18,19,20],"strong",{},"继承是面向对象三大特性之一",[15,22,23],{},"有些类与类之间存在特殊的关系，例如下图中：",[15,25,26],{},[27,28],"img",{"alt":29,"src":30},"1544861202252","https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002Fstage3-1544861202252-f2305d08e7.webp",[15,32,33],{},"我们发现，定义这些类时，下级别的成员除了拥有上一级的共性，还有自己的特性。",[15,35,36],{},"这个时候我们就可以考虑利用继承的技术，减少重复代码",[38,39,40],"h4",{"id":40},"继承的基本语法",[15,42,43],{},"例如我们看到很多网站中，都有公共的头部，公共的底部，甚至公共的左侧列表，只有中心内容不同",[15,45,46],{},"接下来我们分别利用普通写法和继承的写法来实现网页中的内容，看一下继承存在的意义以及好处",[15,48,49],{},[18,50,51],{},"普通实现：",[53,54,59],"pre",{"className":55,"code":56,"language":57,"meta":58,"style":58},"language-cpp shiki shiki-themes github-light github-dark","\u002F\u002FJava页面\nclass Java \n{\npublic:\n    void header()\n    {\n        cout \u003C\u003C \"首页、公开课、登录、注册...（公共头部）\" \u003C\u003C endl;\n    }\n    void footer()\n    {\n        cout \u003C\u003C \"帮助中心、交流合作、站内地图...(公共底部)\" \u003C\u003C endl;\n    }\n    void left()\n    {\n        cout \u003C\u003C \"Java,Python,C++...(公共分类列表)\" \u003C\u003C endl;\n    }\n    void content()\n    {\n        cout \u003C\u003C \"JAVA学科视频\" \u003C\u003C endl;\n    }\n};\n\u002F\u002FPython页面\nclass Python\n{\npublic:\n    void header()\n    {\n        cout \u003C\u003C \"首页、公开课、登录、注册...（公共头部）\" \u003C\u003C endl;\n    }\n    void footer()\n    {\n        cout \u003C\u003C \"帮助中心、交流合作、站内地图...(公共底部)\" \u003C\u003C endl;\n    }\n    void left()\n    {\n        cout \u003C\u003C \"Java,Python,C++...(公共分类列表)\" \u003C\u003C endl;\n    }\n    void content()\n    {\n        cout \u003C\u003C \"Python学科视频\" \u003C\u003C endl;\n    }\n};\n\u002F\u002FC++页面\nclass CPP \n{\npublic:\n    void header()\n    {\n        cout \u003C\u003C \"首页、公开课、登录、注册...（公共头部）\" \u003C\u003C endl;\n    }\n    void footer()\n    {\n        cout \u003C\u003C \"帮助中心、交流合作、站内地图...(公共底部)\" \u003C\u003C endl;\n    }\n    void left()\n    {\n        cout \u003C\u003C \"Java,Python,C++...(公共分类列表)\" \u003C\u003C endl;\n    }\n    void content()\n    {\n        cout \u003C\u003C \"C++学科视频\" \u003C\u003C endl;\n    }\n};\n\nvoid test01()\n{\n    \u002F\u002FJava页面\n    cout \u003C\u003C \"Java下载视频页面如下： \" \u003C\u003C endl;\n    Java ja;\n    ja.header();\n    ja.footer();\n    ja.left();\n    ja.content();\n    cout \u003C\u003C \"--------------------\" \u003C\u003C endl;\n\n    \u002F\u002FPython页面\n    cout \u003C\u003C \"Python下载视频页面如下： \" \u003C\u003C endl;\n    Python py;\n    py.header();\n    py.footer();\n    py.left();\n    py.content();\n    cout \u003C\u003C \"--------------------\" \u003C\u003C endl;\n\n    \u002F\u002FC++页面\n    cout \u003C\u003C \"C++下载视频页面如下： \" \u003C\u003C endl;\n    CPP cp;\n    cp.header();\n    cp.footer();\n    cp.left();\n    cp.content();\n\n}\n\nint main() {\n\n    test01();\n\n\n    return 0;\n}\n","cpp","",[60,61,62,71,86,92,98,110,116,135,141,151,156,170,175,185,190,204,209,219,224,238,243,249,255,263,268,273,282,287,300,305,314,319,332,337,346,351,364,369,378,383,397,402,407,413,423,428,433,442,447,460,465,474,479,492,497,506,511,524,529,538,543,557,562,567,574,585,590,596,611,617,629,639,649,659,673,678,684,698,704,714,723,732,741,754,759,765,779,785,795,804,813,822,827,833,838,850,855,863,868,873,886],"code",{"__ignoreMap":58},[63,64,67],"span",{"class":65,"line":66},"line",1,[63,68,70],{"class":69},"sJ8bj","\u002F\u002FJava页面\n",[63,72,74,78,82],{"class":65,"line":73},2,[63,75,77],{"class":76},"szBVR","class",[63,79,81],{"class":80},"sScJk"," Java",[63,83,85],{"class":84},"sVt8B"," \n",[63,87,89],{"class":65,"line":88},3,[63,90,91],{"class":84},"{\n",[63,93,95],{"class":65,"line":94},4,[63,96,97],{"class":76},"public:\n",[63,99,101,104,107],{"class":65,"line":100},5,[63,102,103],{"class":76},"    void",[63,105,106],{"class":80}," header",[63,108,109],{"class":84},"()\n",[63,111,113],{"class":65,"line":112},6,[63,114,115],{"class":84},"    {\n",[63,117,119,122,125,129,132],{"class":65,"line":118},7,[63,120,121],{"class":84},"        cout ",[63,123,124],{"class":76},"\u003C\u003C",[63,126,128],{"class":127},"sZZnC"," \"首页、公开课、登录、注册...（公共头部）\"",[63,130,131],{"class":76}," \u003C\u003C",[63,133,134],{"class":84}," endl;\n",[63,136,138],{"class":65,"line":137},8,[63,139,140],{"class":84},"    }\n",[63,142,144,146,149],{"class":65,"line":143},9,[63,145,103],{"class":76},[63,147,148],{"class":80}," footer",[63,150,109],{"class":84},[63,152,154],{"class":65,"line":153},10,[63,155,115],{"class":84},[63,157,159,161,163,166,168],{"class":65,"line":158},11,[63,160,121],{"class":84},[63,162,124],{"class":76},[63,164,165],{"class":127}," \"帮助中心、交流合作、站内地图...(公共底部)\"",[63,167,131],{"class":76},[63,169,134],{"class":84},[63,171,173],{"class":65,"line":172},12,[63,174,140],{"class":84},[63,176,178,180,183],{"class":65,"line":177},13,[63,179,103],{"class":76},[63,181,182],{"class":80}," left",[63,184,109],{"class":84},[63,186,188],{"class":65,"line":187},14,[63,189,115],{"class":84},[63,191,193,195,197,200,202],{"class":65,"line":192},15,[63,194,121],{"class":84},[63,196,124],{"class":76},[63,198,199],{"class":127}," \"Java,Python,C++...(公共分类列表)\"",[63,201,131],{"class":76},[63,203,134],{"class":84},[63,205,207],{"class":65,"line":206},16,[63,208,140],{"class":84},[63,210,212,214,217],{"class":65,"line":211},17,[63,213,103],{"class":76},[63,215,216],{"class":80}," content",[63,218,109],{"class":84},[63,220,222],{"class":65,"line":221},18,[63,223,115],{"class":84},[63,225,227,229,231,234,236],{"class":65,"line":226},19,[63,228,121],{"class":84},[63,230,124],{"class":76},[63,232,233],{"class":127}," \"JAVA学科视频\"",[63,235,131],{"class":76},[63,237,134],{"class":84},[63,239,241],{"class":65,"line":240},20,[63,242,140],{"class":84},[63,244,246],{"class":65,"line":245},21,[63,247,248],{"class":84},"};\n",[63,250,252],{"class":65,"line":251},22,[63,253,254],{"class":69},"\u002F\u002FPython页面\n",[63,256,258,260],{"class":65,"line":257},23,[63,259,77],{"class":76},[63,261,262],{"class":80}," Python\n",[63,264,266],{"class":65,"line":265},24,[63,267,91],{"class":84},[63,269,271],{"class":65,"line":270},25,[63,272,97],{"class":76},[63,274,276,278,280],{"class":65,"line":275},26,[63,277,103],{"class":76},[63,279,106],{"class":80},[63,281,109],{"class":84},[63,283,285],{"class":65,"line":284},27,[63,286,115],{"class":84},[63,288,290,292,294,296,298],{"class":65,"line":289},28,[63,291,121],{"class":84},[63,293,124],{"class":76},[63,295,128],{"class":127},[63,297,131],{"class":76},[63,299,134],{"class":84},[63,301,303],{"class":65,"line":302},29,[63,304,140],{"class":84},[63,306,308,310,312],{"class":65,"line":307},30,[63,309,103],{"class":76},[63,311,148],{"class":80},[63,313,109],{"class":84},[63,315,317],{"class":65,"line":316},31,[63,318,115],{"class":84},[63,320,322,324,326,328,330],{"class":65,"line":321},32,[63,323,121],{"class":84},[63,325,124],{"class":76},[63,327,165],{"class":127},[63,329,131],{"class":76},[63,331,134],{"class":84},[63,333,335],{"class":65,"line":334},33,[63,336,140],{"class":84},[63,338,340,342,344],{"class":65,"line":339},34,[63,341,103],{"class":76},[63,343,182],{"class":80},[63,345,109],{"class":84},[63,347,349],{"class":65,"line":348},35,[63,350,115],{"class":84},[63,352,354,356,358,360,362],{"class":65,"line":353},36,[63,355,121],{"class":84},[63,357,124],{"class":76},[63,359,199],{"class":127},[63,361,131],{"class":76},[63,363,134],{"class":84},[63,365,367],{"class":65,"line":366},37,[63,368,140],{"class":84},[63,370,372,374,376],{"class":65,"line":371},38,[63,373,103],{"class":76},[63,375,216],{"class":80},[63,377,109],{"class":84},[63,379,381],{"class":65,"line":380},39,[63,382,115],{"class":84},[63,384,386,388,390,393,395],{"class":65,"line":385},40,[63,387,121],{"class":84},[63,389,124],{"class":76},[63,391,392],{"class":127}," \"Python学科视频\"",[63,394,131],{"class":76},[63,396,134],{"class":84},[63,398,400],{"class":65,"line":399},41,[63,401,140],{"class":84},[63,403,405],{"class":65,"line":404},42,[63,406,248],{"class":84},[63,408,410],{"class":65,"line":409},43,[63,411,412],{"class":69},"\u002F\u002FC++页面\n",[63,414,416,418,421],{"class":65,"line":415},44,[63,417,77],{"class":76},[63,419,420],{"class":80}," CPP",[63,422,85],{"class":84},[63,424,426],{"class":65,"line":425},45,[63,427,91],{"class":84},[63,429,431],{"class":65,"line":430},46,[63,432,97],{"class":76},[63,434,436,438,440],{"class":65,"line":435},47,[63,437,103],{"class":76},[63,439,106],{"class":80},[63,441,109],{"class":84},[63,443,445],{"class":65,"line":444},48,[63,446,115],{"class":84},[63,448,450,452,454,456,458],{"class":65,"line":449},49,[63,451,121],{"class":84},[63,453,124],{"class":76},[63,455,128],{"class":127},[63,457,131],{"class":76},[63,459,134],{"class":84},[63,461,463],{"class":65,"line":462},50,[63,464,140],{"class":84},[63,466,468,470,472],{"class":65,"line":467},51,[63,469,103],{"class":76},[63,471,148],{"class":80},[63,473,109],{"class":84},[63,475,477],{"class":65,"line":476},52,[63,478,115],{"class":84},[63,480,482,484,486,488,490],{"class":65,"line":481},53,[63,483,121],{"class":84},[63,485,124],{"class":76},[63,487,165],{"class":127},[63,489,131],{"class":76},[63,491,134],{"class":84},[63,493,495],{"class":65,"line":494},54,[63,496,140],{"class":84},[63,498,500,502,504],{"class":65,"line":499},55,[63,501,103],{"class":76},[63,503,182],{"class":80},[63,505,109],{"class":84},[63,507,509],{"class":65,"line":508},56,[63,510,115],{"class":84},[63,512,514,516,518,520,522],{"class":65,"line":513},57,[63,515,121],{"class":84},[63,517,124],{"class":76},[63,519,199],{"class":127},[63,521,131],{"class":76},[63,523,134],{"class":84},[63,525,527],{"class":65,"line":526},58,[63,528,140],{"class":84},[63,530,532,534,536],{"class":65,"line":531},59,[63,533,103],{"class":76},[63,535,216],{"class":80},[63,537,109],{"class":84},[63,539,541],{"class":65,"line":540},60,[63,542,115],{"class":84},[63,544,546,548,550,553,555],{"class":65,"line":545},61,[63,547,121],{"class":84},[63,549,124],{"class":76},[63,551,552],{"class":127}," \"C++学科视频\"",[63,554,131],{"class":76},[63,556,134],{"class":84},[63,558,560],{"class":65,"line":559},62,[63,561,140],{"class":84},[63,563,565],{"class":65,"line":564},63,[63,566,248],{"class":84},[63,568,570],{"class":65,"line":569},64,[63,571,573],{"emptyLinePlaceholder":572},true,"\n",[63,575,577,580,583],{"class":65,"line":576},65,[63,578,579],{"class":76},"void",[63,581,582],{"class":80}," test01",[63,584,109],{"class":84},[63,586,588],{"class":65,"line":587},66,[63,589,91],{"class":84},[63,591,593],{"class":65,"line":592},67,[63,594,595],{"class":69},"    \u002F\u002FJava页面\n",[63,597,599,602,604,607,609],{"class":65,"line":598},68,[63,600,601],{"class":84},"    cout ",[63,603,124],{"class":76},[63,605,606],{"class":127}," \"Java下载视频页面如下： \"",[63,608,131],{"class":76},[63,610,134],{"class":84},[63,612,614],{"class":65,"line":613},69,[63,615,616],{"class":84},"    Java ja;\n",[63,618,620,623,626],{"class":65,"line":619},70,[63,621,622],{"class":84},"    ja.",[63,624,625],{"class":80},"header",[63,627,628],{"class":84},"();\n",[63,630,632,634,637],{"class":65,"line":631},71,[63,633,622],{"class":84},[63,635,636],{"class":80},"footer",[63,638,628],{"class":84},[63,640,642,644,647],{"class":65,"line":641},72,[63,643,622],{"class":84},[63,645,646],{"class":80},"left",[63,648,628],{"class":84},[63,650,652,654,657],{"class":65,"line":651},73,[63,653,622],{"class":84},[63,655,656],{"class":80},"content",[63,658,628],{"class":84},[63,660,662,664,666,669,671],{"class":65,"line":661},74,[63,663,601],{"class":84},[63,665,124],{"class":76},[63,667,668],{"class":127}," \"--------------------\"",[63,670,131],{"class":76},[63,672,134],{"class":84},[63,674,676],{"class":65,"line":675},75,[63,677,573],{"emptyLinePlaceholder":572},[63,679,681],{"class":65,"line":680},76,[63,682,683],{"class":69},"    \u002F\u002FPython页面\n",[63,685,687,689,691,694,696],{"class":65,"line":686},77,[63,688,601],{"class":84},[63,690,124],{"class":76},[63,692,693],{"class":127}," \"Python下载视频页面如下： \"",[63,695,131],{"class":76},[63,697,134],{"class":84},[63,699,701],{"class":65,"line":700},78,[63,702,703],{"class":84},"    Python py;\n",[63,705,707,710,712],{"class":65,"line":706},79,[63,708,709],{"class":84},"    py.",[63,711,625],{"class":80},[63,713,628],{"class":84},[63,715,717,719,721],{"class":65,"line":716},80,[63,718,709],{"class":84},[63,720,636],{"class":80},[63,722,628],{"class":84},[63,724,726,728,730],{"class":65,"line":725},81,[63,727,709],{"class":84},[63,729,646],{"class":80},[63,731,628],{"class":84},[63,733,735,737,739],{"class":65,"line":734},82,[63,736,709],{"class":84},[63,738,656],{"class":80},[63,740,628],{"class":84},[63,742,744,746,748,750,752],{"class":65,"line":743},83,[63,745,601],{"class":84},[63,747,124],{"class":76},[63,749,668],{"class":127},[63,751,131],{"class":76},[63,753,134],{"class":84},[63,755,757],{"class":65,"line":756},84,[63,758,573],{"emptyLinePlaceholder":572},[63,760,762],{"class":65,"line":761},85,[63,763,764],{"class":69},"    \u002F\u002FC++页面\n",[63,766,768,770,772,775,777],{"class":65,"line":767},86,[63,769,601],{"class":84},[63,771,124],{"class":76},[63,773,774],{"class":127}," \"C++下载视频页面如下： \"",[63,776,131],{"class":76},[63,778,134],{"class":84},[63,780,782],{"class":65,"line":781},87,[63,783,784],{"class":84},"    CPP cp;\n",[63,786,788,791,793],{"class":65,"line":787},88,[63,789,790],{"class":84},"    cp.",[63,792,625],{"class":80},[63,794,628],{"class":84},[63,796,798,800,802],{"class":65,"line":797},89,[63,799,790],{"class":84},[63,801,636],{"class":80},[63,803,628],{"class":84},[63,805,807,809,811],{"class":65,"line":806},90,[63,808,790],{"class":84},[63,810,646],{"class":80},[63,812,628],{"class":84},[63,814,816,818,820],{"class":65,"line":815},91,[63,817,790],{"class":84},[63,819,656],{"class":80},[63,821,628],{"class":84},[63,823,825],{"class":65,"line":824},92,[63,826,573],{"emptyLinePlaceholder":572},[63,828,830],{"class":65,"line":829},93,[63,831,832],{"class":84},"}\n",[63,834,836],{"class":65,"line":835},94,[63,837,573],{"emptyLinePlaceholder":572},[63,839,841,844,847],{"class":65,"line":840},95,[63,842,843],{"class":76},"int",[63,845,846],{"class":80}," main",[63,848,849],{"class":84},"() {\n",[63,851,853],{"class":65,"line":852},96,[63,854,573],{"emptyLinePlaceholder":572},[63,856,858,861],{"class":65,"line":857},97,[63,859,860],{"class":80},"    test01",[63,862,628],{"class":84},[63,864,866],{"class":65,"line":865},98,[63,867,573],{"emptyLinePlaceholder":572},[63,869,871],{"class":65,"line":870},99,[63,872,573],{"emptyLinePlaceholder":572},[63,874,876,879,883],{"class":65,"line":875},100,[63,877,878],{"class":76},"    return",[63,880,882],{"class":881},"sj4cs"," 0",[63,884,885],{"class":84},";\n",[63,887,889],{"class":65,"line":888},101,[63,890,832],{"class":84},[15,892,893],{},[18,894,895],{},"运行结果：",[53,897,902],{"className":898,"code":900,"language":901,"meta":58},[899],"language-text","Java下载视频页面如下：\n首页、公开课、登录、注册...（公共头部）\n帮助中心、交流合作、站内地图...(公共底部)\nJava,Python,C++...(公共分类列表)\nJAVA学科视频\n--------------------\nPython下载视频页面如下：\n首页、公开课、登录、注册...（公共头部）\n帮助中心、交流合作、站内地图...(公共底部)\nJava,Python,C++...(公共分类列表)\nPython学科视频\n--------------------\nC++下载视频页面如下：\n首页、公开课、登录、注册...（公共头部）\n帮助中心、交流合作、站内地图...(公共底部)\nJava,Python,C++...(公共分类列表)\nC++学科视频\n","text",[60,903,900],{"__ignoreMap":58},[15,905,906],{},[18,907,908],{},"继承实现：",[53,910,912],{"className":55,"code":911,"language":57,"meta":58,"style":58},"\u002F\u002F公共页面\nclass BasePage\n{\npublic:\n    void header()\n    {\n        cout \u003C\u003C \"首页、公开课、登录、注册...（公共头部）\" \u003C\u003C endl;\n    }\n\n    void footer()\n    {\n        cout \u003C\u003C \"帮助中心、交流合作、站内地图...(公共底部)\" \u003C\u003C endl;\n    }\n    void left()\n    {\n        cout \u003C\u003C \"Java,Python,C++...(公共分类列表)\" \u003C\u003C endl;\n    }\n\n};\n\n\u002F\u002FJava页面\nclass Java : public BasePage\n{\npublic:\n    void content()\n    {\n        cout \u003C\u003C \"JAVA学科视频\" \u003C\u003C endl;\n    }\n};\n\u002F\u002FPython页面\nclass Python : public BasePage\n{\npublic:\n    void content()\n    {\n        cout \u003C\u003C \"Python学科视频\" \u003C\u003C endl;\n    }\n};\n\u002F\u002FC++页面\nclass CPP : public BasePage\n{\npublic:\n    void content()\n    {\n        cout \u003C\u003C \"C++学科视频\" \u003C\u003C endl;\n    }\n};\n\nvoid test01()\n{\n    \u002F\u002FJava页面\n    cout \u003C\u003C \"Java下载视频页面如下： \" \u003C\u003C endl;\n    Java ja;\n    ja.header();\n    ja.footer();\n    ja.left();\n    ja.content();\n    cout \u003C\u003C \"--------------------\" \u003C\u003C endl;\n\n    \u002F\u002FPython页面\n    cout \u003C\u003C \"Python下载视频页面如下： \" \u003C\u003C endl;\n    Python py;\n    py.header();\n    py.footer();\n    py.left();\n    py.content();\n    cout \u003C\u003C \"--------------------\" \u003C\u003C endl;\n\n    \u002F\u002FC++页面\n    cout \u003C\u003C \"C++下载视频页面如下： \" \u003C\u003C endl;\n    CPP cp;\n    cp.header();\n    cp.footer();\n    cp.left();\n    cp.content();\n\n}\n\nint main() {\n\n    test01();\n\n\n    return 0;\n}\n",[60,913,914,919,926,930,934,942,946,958,962,966,974,978,990,994,1002,1006,1018,1022,1026,1030,1034,1038,1052,1056,1060,1068,1072,1084,1088,1092,1096,1109,1113,1117,1125,1129,1141,1145,1149,1153,1165,1169,1173,1181,1185,1197,1201,1205,1209,1217,1221,1225,1237,1241,1249,1257,1265,1273,1285,1289,1293,1305,1309,1317,1325,1333,1341,1353,1357,1361,1373,1377,1385,1393,1401,1409,1413,1417,1421,1429,1433,1439,1443,1447,1455],{"__ignoreMap":58},[63,915,916],{"class":65,"line":66},[63,917,918],{"class":69},"\u002F\u002F公共页面\n",[63,920,921,923],{"class":65,"line":73},[63,922,77],{"class":76},[63,924,925],{"class":80}," BasePage\n",[63,927,928],{"class":65,"line":88},[63,929,91],{"class":84},[63,931,932],{"class":65,"line":94},[63,933,97],{"class":76},[63,935,936,938,940],{"class":65,"line":100},[63,937,103],{"class":76},[63,939,106],{"class":80},[63,941,109],{"class":84},[63,943,944],{"class":65,"line":112},[63,945,115],{"class":84},[63,947,948,950,952,954,956],{"class":65,"line":118},[63,949,121],{"class":84},[63,951,124],{"class":76},[63,953,128],{"class":127},[63,955,131],{"class":76},[63,957,134],{"class":84},[63,959,960],{"class":65,"line":137},[63,961,140],{"class":84},[63,963,964],{"class":65,"line":143},[63,965,573],{"emptyLinePlaceholder":572},[63,967,968,970,972],{"class":65,"line":153},[63,969,103],{"class":76},[63,971,148],{"class":80},[63,973,109],{"class":84},[63,975,976],{"class":65,"line":158},[63,977,115],{"class":84},[63,979,980,982,984,986,988],{"class":65,"line":172},[63,981,121],{"class":84},[63,983,124],{"class":76},[63,985,165],{"class":127},[63,987,131],{"class":76},[63,989,134],{"class":84},[63,991,992],{"class":65,"line":177},[63,993,140],{"class":84},[63,995,996,998,1000],{"class":65,"line":187},[63,997,103],{"class":76},[63,999,182],{"class":80},[63,1001,109],{"class":84},[63,1003,1004],{"class":65,"line":192},[63,1005,115],{"class":84},[63,1007,1008,1010,1012,1014,1016],{"class":65,"line":206},[63,1009,121],{"class":84},[63,1011,124],{"class":76},[63,1013,199],{"class":127},[63,1015,131],{"class":76},[63,1017,134],{"class":84},[63,1019,1020],{"class":65,"line":211},[63,1021,140],{"class":84},[63,1023,1024],{"class":65,"line":221},[63,1025,573],{"emptyLinePlaceholder":572},[63,1027,1028],{"class":65,"line":226},[63,1029,248],{"class":84},[63,1031,1032],{"class":65,"line":240},[63,1033,573],{"emptyLinePlaceholder":572},[63,1035,1036],{"class":65,"line":245},[63,1037,70],{"class":69},[63,1039,1040,1042,1044,1047,1050],{"class":65,"line":251},[63,1041,77],{"class":76},[63,1043,81],{"class":80},[63,1045,1046],{"class":84}," : ",[63,1048,1049],{"class":76},"public",[63,1051,925],{"class":80},[63,1053,1054],{"class":65,"line":257},[63,1055,91],{"class":84},[63,1057,1058],{"class":65,"line":265},[63,1059,97],{"class":76},[63,1061,1062,1064,1066],{"class":65,"line":270},[63,1063,103],{"class":76},[63,1065,216],{"class":80},[63,1067,109],{"class":84},[63,1069,1070],{"class":65,"line":275},[63,1071,115],{"class":84},[63,1073,1074,1076,1078,1080,1082],{"class":65,"line":284},[63,1075,121],{"class":84},[63,1077,124],{"class":76},[63,1079,233],{"class":127},[63,1081,131],{"class":76},[63,1083,134],{"class":84},[63,1085,1086],{"class":65,"line":289},[63,1087,140],{"class":84},[63,1089,1090],{"class":65,"line":302},[63,1091,248],{"class":84},[63,1093,1094],{"class":65,"line":307},[63,1095,254],{"class":69},[63,1097,1098,1100,1103,1105,1107],{"class":65,"line":316},[63,1099,77],{"class":76},[63,1101,1102],{"class":80}," Python",[63,1104,1046],{"class":84},[63,1106,1049],{"class":76},[63,1108,925],{"class":80},[63,1110,1111],{"class":65,"line":321},[63,1112,91],{"class":84},[63,1114,1115],{"class":65,"line":334},[63,1116,97],{"class":76},[63,1118,1119,1121,1123],{"class":65,"line":339},[63,1120,103],{"class":76},[63,1122,216],{"class":80},[63,1124,109],{"class":84},[63,1126,1127],{"class":65,"line":348},[63,1128,115],{"class":84},[63,1130,1131,1133,1135,1137,1139],{"class":65,"line":353},[63,1132,121],{"class":84},[63,1134,124],{"class":76},[63,1136,392],{"class":127},[63,1138,131],{"class":76},[63,1140,134],{"class":84},[63,1142,1143],{"class":65,"line":366},[63,1144,140],{"class":84},[63,1146,1147],{"class":65,"line":371},[63,1148,248],{"class":84},[63,1150,1151],{"class":65,"line":380},[63,1152,412],{"class":69},[63,1154,1155,1157,1159,1161,1163],{"class":65,"line":385},[63,1156,77],{"class":76},[63,1158,420],{"class":80},[63,1160,1046],{"class":84},[63,1162,1049],{"class":76},[63,1164,925],{"class":80},[63,1166,1167],{"class":65,"line":399},[63,1168,91],{"class":84},[63,1170,1171],{"class":65,"line":404},[63,1172,97],{"class":76},[63,1174,1175,1177,1179],{"class":65,"line":409},[63,1176,103],{"class":76},[63,1178,216],{"class":80},[63,1180,109],{"class":84},[63,1182,1183],{"class":65,"line":415},[63,1184,115],{"class":84},[63,1186,1187,1189,1191,1193,1195],{"class":65,"line":425},[63,1188,121],{"class":84},[63,1190,124],{"class":76},[63,1192,552],{"class":127},[63,1194,131],{"class":76},[63,1196,134],{"class":84},[63,1198,1199],{"class":65,"line":430},[63,1200,140],{"class":84},[63,1202,1203],{"class":65,"line":435},[63,1204,248],{"class":84},[63,1206,1207],{"class":65,"line":444},[63,1208,573],{"emptyLinePlaceholder":572},[63,1210,1211,1213,1215],{"class":65,"line":449},[63,1212,579],{"class":76},[63,1214,582],{"class":80},[63,1216,109],{"class":84},[63,1218,1219],{"class":65,"line":462},[63,1220,91],{"class":84},[63,1222,1223],{"class":65,"line":467},[63,1224,595],{"class":69},[63,1226,1227,1229,1231,1233,1235],{"class":65,"line":476},[63,1228,601],{"class":84},[63,1230,124],{"class":76},[63,1232,606],{"class":127},[63,1234,131],{"class":76},[63,1236,134],{"class":84},[63,1238,1239],{"class":65,"line":481},[63,1240,616],{"class":84},[63,1242,1243,1245,1247],{"class":65,"line":494},[63,1244,622],{"class":84},[63,1246,625],{"class":80},[63,1248,628],{"class":84},[63,1250,1251,1253,1255],{"class":65,"line":499},[63,1252,622],{"class":84},[63,1254,636],{"class":80},[63,1256,628],{"class":84},[63,1258,1259,1261,1263],{"class":65,"line":508},[63,1260,622],{"class":84},[63,1262,646],{"class":80},[63,1264,628],{"class":84},[63,1266,1267,1269,1271],{"class":65,"line":513},[63,1268,622],{"class":84},[63,1270,656],{"class":80},[63,1272,628],{"class":84},[63,1274,1275,1277,1279,1281,1283],{"class":65,"line":526},[63,1276,601],{"class":84},[63,1278,124],{"class":76},[63,1280,668],{"class":127},[63,1282,131],{"class":76},[63,1284,134],{"class":84},[63,1286,1287],{"class":65,"line":531},[63,1288,573],{"emptyLinePlaceholder":572},[63,1290,1291],{"class":65,"line":540},[63,1292,683],{"class":69},[63,1294,1295,1297,1299,1301,1303],{"class":65,"line":545},[63,1296,601],{"class":84},[63,1298,124],{"class":76},[63,1300,693],{"class":127},[63,1302,131],{"class":76},[63,1304,134],{"class":84},[63,1306,1307],{"class":65,"line":559},[63,1308,703],{"class":84},[63,1310,1311,1313,1315],{"class":65,"line":564},[63,1312,709],{"class":84},[63,1314,625],{"class":80},[63,1316,628],{"class":84},[63,1318,1319,1321,1323],{"class":65,"line":569},[63,1320,709],{"class":84},[63,1322,636],{"class":80},[63,1324,628],{"class":84},[63,1326,1327,1329,1331],{"class":65,"line":576},[63,1328,709],{"class":84},[63,1330,646],{"class":80},[63,1332,628],{"class":84},[63,1334,1335,1337,1339],{"class":65,"line":587},[63,1336,709],{"class":84},[63,1338,656],{"class":80},[63,1340,628],{"class":84},[63,1342,1343,1345,1347,1349,1351],{"class":65,"line":592},[63,1344,601],{"class":84},[63,1346,124],{"class":76},[63,1348,668],{"class":127},[63,1350,131],{"class":76},[63,1352,134],{"class":84},[63,1354,1355],{"class":65,"line":598},[63,1356,573],{"emptyLinePlaceholder":572},[63,1358,1359],{"class":65,"line":613},[63,1360,764],{"class":69},[63,1362,1363,1365,1367,1369,1371],{"class":65,"line":619},[63,1364,601],{"class":84},[63,1366,124],{"class":76},[63,1368,774],{"class":127},[63,1370,131],{"class":76},[63,1372,134],{"class":84},[63,1374,1375],{"class":65,"line":631},[63,1376,784],{"class":84},[63,1378,1379,1381,1383],{"class":65,"line":641},[63,1380,790],{"class":84},[63,1382,625],{"class":80},[63,1384,628],{"class":84},[63,1386,1387,1389,1391],{"class":65,"line":651},[63,1388,790],{"class":84},[63,1390,636],{"class":80},[63,1392,628],{"class":84},[63,1394,1395,1397,1399],{"class":65,"line":661},[63,1396,790],{"class":84},[63,1398,646],{"class":80},[63,1400,628],{"class":84},[63,1402,1403,1405,1407],{"class":65,"line":675},[63,1404,790],{"class":84},[63,1406,656],{"class":80},[63,1408,628],{"class":84},[63,1410,1411],{"class":65,"line":680},[63,1412,573],{"emptyLinePlaceholder":572},[63,1414,1415],{"class":65,"line":686},[63,1416,832],{"class":84},[63,1418,1419],{"class":65,"line":700},[63,1420,573],{"emptyLinePlaceholder":572},[63,1422,1423,1425,1427],{"class":65,"line":706},[63,1424,843],{"class":76},[63,1426,846],{"class":80},[63,1428,849],{"class":84},[63,1430,1431],{"class":65,"line":716},[63,1432,573],{"emptyLinePlaceholder":572},[63,1434,1435,1437],{"class":65,"line":725},[63,1436,860],{"class":80},[63,1438,628],{"class":84},[63,1440,1441],{"class":65,"line":734},[63,1442,573],{"emptyLinePlaceholder":572},[63,1444,1445],{"class":65,"line":743},[63,1446,573],{"emptyLinePlaceholder":572},[63,1448,1449,1451,1453],{"class":65,"line":756},[63,1450,878],{"class":76},[63,1452,882],{"class":881},[63,1454,885],{"class":84},[63,1456,1457],{"class":65,"line":761},[63,1458,832],{"class":84},[15,1460,1461],{},[18,1462,895],{},[53,1464,1466],{"className":1465,"code":900,"language":901,"meta":58},[899],[60,1467,900],{"__ignoreMap":58},[15,1469,1470],{},[18,1471,1472],{},"总结：",[15,1474,1475],{},"继承的好处：==可以减少重复的代码==",[15,1477,1478],{},"class A : public B;",[15,1480,1481],{},"A 类称为子类 或 派生类",[15,1483,1484],{},"B 类称为父类 或 基类",[15,1486,1487,1490],{},[18,1488,1489],{},"派生类中的成员，包含两大部分","：",[15,1492,1493],{},"一类是从基类继承过来的，一类是自己增加的成员。",[15,1495,1496],{},"从基类继承过过来的表现其共性，而新增的成员体现了其个性。",[38,1498,1499],{"id":1499},"继承方式",[15,1501,1502,1503],{},"继承的语法：",[60,1504,1505],{},"class 子类 : 继承方式  父类",[15,1507,1508],{},[18,1509,1510],{},"继承方式一共有三种：",[1512,1513,1514,1518,1521],"ul",{},[1515,1516,1517],"li",{},"公共继承",[1515,1519,1520],{},"保护继承",[1515,1522,1523],{},"私有继承",[15,1525,1526],{},[27,1527],{"alt":27,"src":1528},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002Fstage3-clip-image002-3854cb3c79.webp",[15,1530,1531],{},[18,1532,1533],{},"示例：",[53,1535,1537],{"className":55,"code":1536,"language":57,"meta":58,"style":58},"class Base1\n{\npublic: \n    int m_A;\nprotected:\n    int m_B;\nprivate:\n    int m_C;\n};\n\n\u002F\u002F公共继承\nclass Son1 :public Base1\n{\npublic:\n    void func()\n    {\n        m_A; \u002F\u002F可访问 public权限\n        m_B; \u002F\u002F可访问 protected权限\n        \u002F\u002Fm_C; \u002F\u002F不可访问\n    }\n};\n\nvoid myClass()\n{\n    Son1 s1;\n    s1.m_A; \u002F\u002F其他类只能访问到公共权限\n}\n\n\u002F\u002F保护继承\nclass Base2\n{\npublic:\n    int m_A;\nprotected:\n    int m_B;\nprivate:\n    int m_C;\n};\nclass Son2:protected Base2\n{\npublic:\n    void func()\n    {\n        m_A; \u002F\u002F可访问 protected权限\n        m_B; \u002F\u002F可访问 protected权限\n        \u002F\u002Fm_C; \u002F\u002F不可访问\n    }\n};\nvoid myClass2()\n{\n    Son2 s;\n    \u002F\u002Fs.m_A; \u002F\u002F不可访问\n}\n\n\u002F\u002F私有继承\nclass Base3\n{\npublic:\n    int m_A;\nprotected:\n    int m_B;\nprivate:\n    int m_C;\n};\nclass Son3:private Base3\n{\npublic:\n    void func()\n    {\n        m_A; \u002F\u002F可访问 private权限\n        m_B; \u002F\u002F可访问 private权限\n        \u002F\u002Fm_C; \u002F\u002F不可访问\n    }\n};\nclass GrandSon3 :public Son3\n{\npublic:\n    void func()\n    {\n        \u002F\u002FSon3是私有继承，所以继承Son3的属性在GrandSon3中都无法访问到\n        \u002F\u002Fm_A;\n        \u002F\u002Fm_B;\n        \u002F\u002Fm_C;\n    }\n};\n",[60,1538,1539,1546,1550,1557,1565,1570,1577,1582,1589,1593,1597,1602,1616,1620,1624,1633,1637,1645,1653,1661,1665,1669,1673,1682,1686,1691,1699,1703,1707,1712,1719,1723,1727,1733,1737,1743,1747,1753,1757,1772,1776,1780,1788,1792,1798,1804,1810,1814,1818,1827,1831,1836,1843,1847,1851,1856,1863,1867,1871,1877,1881,1887,1891,1897,1901,1915,1919,1923,1931,1935,1942,1948,1954,1958,1962,1976,1980,1984,1992,1996,2001,2006,2011,2016,2020],{"__ignoreMap":58},[63,1540,1541,1543],{"class":65,"line":66},[63,1542,77],{"class":76},[63,1544,1545],{"class":80}," Base1\n",[63,1547,1548],{"class":65,"line":73},[63,1549,91],{"class":84},[63,1551,1552,1555],{"class":65,"line":88},[63,1553,1554],{"class":76},"public:",[63,1556,85],{"class":84},[63,1558,1559,1562],{"class":65,"line":94},[63,1560,1561],{"class":76},"    int",[63,1563,1564],{"class":84}," m_A;\n",[63,1566,1567],{"class":65,"line":100},[63,1568,1569],{"class":76},"protected:\n",[63,1571,1572,1574],{"class":65,"line":112},[63,1573,1561],{"class":76},[63,1575,1576],{"class":84}," m_B;\n",[63,1578,1579],{"class":65,"line":118},[63,1580,1581],{"class":76},"private:\n",[63,1583,1584,1586],{"class":65,"line":137},[63,1585,1561],{"class":76},[63,1587,1588],{"class":84}," m_C;\n",[63,1590,1591],{"class":65,"line":143},[63,1592,248],{"class":84},[63,1594,1595],{"class":65,"line":153},[63,1596,573],{"emptyLinePlaceholder":572},[63,1598,1599],{"class":65,"line":158},[63,1600,1601],{"class":69},"\u002F\u002F公共继承\n",[63,1603,1604,1606,1609,1612,1614],{"class":65,"line":172},[63,1605,77],{"class":76},[63,1607,1608],{"class":80}," Son1",[63,1610,1611],{"class":84}," :",[63,1613,1049],{"class":76},[63,1615,1545],{"class":80},[63,1617,1618],{"class":65,"line":177},[63,1619,91],{"class":84},[63,1621,1622],{"class":65,"line":187},[63,1623,97],{"class":76},[63,1625,1626,1628,1631],{"class":65,"line":192},[63,1627,103],{"class":76},[63,1629,1630],{"class":80}," func",[63,1632,109],{"class":84},[63,1634,1635],{"class":65,"line":206},[63,1636,115],{"class":84},[63,1638,1639,1642],{"class":65,"line":211},[63,1640,1641],{"class":84},"        m_A;",[63,1643,1644],{"class":69}," \u002F\u002F可访问 public权限\n",[63,1646,1647,1650],{"class":65,"line":221},[63,1648,1649],{"class":84},"        m_B;",[63,1651,1652],{"class":69}," \u002F\u002F可访问 protected权限\n",[63,1654,1655,1658],{"class":65,"line":226},[63,1656,1657],{"class":69},"        \u002F\u002Fm_C;",[63,1659,1660],{"class":69}," \u002F\u002F不可访问\n",[63,1662,1663],{"class":65,"line":240},[63,1664,140],{"class":84},[63,1666,1667],{"class":65,"line":245},[63,1668,248],{"class":84},[63,1670,1671],{"class":65,"line":251},[63,1672,573],{"emptyLinePlaceholder":572},[63,1674,1675,1677,1680],{"class":65,"line":257},[63,1676,579],{"class":76},[63,1678,1679],{"class":80}," myClass",[63,1681,109],{"class":84},[63,1683,1684],{"class":65,"line":265},[63,1685,91],{"class":84},[63,1687,1688],{"class":65,"line":270},[63,1689,1690],{"class":84},"    Son1 s1;\n",[63,1692,1693,1696],{"class":65,"line":275},[63,1694,1695],{"class":84},"    s1.m_A;",[63,1697,1698],{"class":69}," \u002F\u002F其他类只能访问到公共权限\n",[63,1700,1701],{"class":65,"line":284},[63,1702,832],{"class":84},[63,1704,1705],{"class":65,"line":289},[63,1706,573],{"emptyLinePlaceholder":572},[63,1708,1709],{"class":65,"line":302},[63,1710,1711],{"class":69},"\u002F\u002F保护继承\n",[63,1713,1714,1716],{"class":65,"line":307},[63,1715,77],{"class":76},[63,1717,1718],{"class":80}," Base2\n",[63,1720,1721],{"class":65,"line":316},[63,1722,91],{"class":84},[63,1724,1725],{"class":65,"line":321},[63,1726,97],{"class":76},[63,1728,1729,1731],{"class":65,"line":334},[63,1730,1561],{"class":76},[63,1732,1564],{"class":84},[63,1734,1735],{"class":65,"line":339},[63,1736,1569],{"class":76},[63,1738,1739,1741],{"class":65,"line":348},[63,1740,1561],{"class":76},[63,1742,1576],{"class":84},[63,1744,1745],{"class":65,"line":353},[63,1746,1581],{"class":76},[63,1748,1749,1751],{"class":65,"line":366},[63,1750,1561],{"class":76},[63,1752,1588],{"class":84},[63,1754,1755],{"class":65,"line":371},[63,1756,248],{"class":84},[63,1758,1759,1761,1764,1767,1770],{"class":65,"line":380},[63,1760,77],{"class":76},[63,1762,1763],{"class":80}," Son2",[63,1765,1766],{"class":84},":",[63,1768,1769],{"class":76},"protected",[63,1771,1718],{"class":80},[63,1773,1774],{"class":65,"line":385},[63,1775,91],{"class":84},[63,1777,1778],{"class":65,"line":399},[63,1779,97],{"class":76},[63,1781,1782,1784,1786],{"class":65,"line":404},[63,1783,103],{"class":76},[63,1785,1630],{"class":80},[63,1787,109],{"class":84},[63,1789,1790],{"class":65,"line":409},[63,1791,115],{"class":84},[63,1793,1794,1796],{"class":65,"line":415},[63,1795,1641],{"class":84},[63,1797,1652],{"class":69},[63,1799,1800,1802],{"class":65,"line":425},[63,1801,1649],{"class":84},[63,1803,1652],{"class":69},[63,1805,1806,1808],{"class":65,"line":430},[63,1807,1657],{"class":69},[63,1809,1660],{"class":69},[63,1811,1812],{"class":65,"line":435},[63,1813,140],{"class":84},[63,1815,1816],{"class":65,"line":444},[63,1817,248],{"class":84},[63,1819,1820,1822,1825],{"class":65,"line":449},[63,1821,579],{"class":76},[63,1823,1824],{"class":80}," myClass2",[63,1826,109],{"class":84},[63,1828,1829],{"class":65,"line":462},[63,1830,91],{"class":84},[63,1832,1833],{"class":65,"line":467},[63,1834,1835],{"class":84},"    Son2 s;\n",[63,1837,1838,1841],{"class":65,"line":476},[63,1839,1840],{"class":69},"    \u002F\u002Fs.m_A;",[63,1842,1660],{"class":69},[63,1844,1845],{"class":65,"line":481},[63,1846,832],{"class":84},[63,1848,1849],{"class":65,"line":494},[63,1850,573],{"emptyLinePlaceholder":572},[63,1852,1853],{"class":65,"line":499},[63,1854,1855],{"class":69},"\u002F\u002F私有继承\n",[63,1857,1858,1860],{"class":65,"line":508},[63,1859,77],{"class":76},[63,1861,1862],{"class":80}," Base3\n",[63,1864,1865],{"class":65,"line":513},[63,1866,91],{"class":84},[63,1868,1869],{"class":65,"line":526},[63,1870,97],{"class":76},[63,1872,1873,1875],{"class":65,"line":531},[63,1874,1561],{"class":76},[63,1876,1564],{"class":84},[63,1878,1879],{"class":65,"line":540},[63,1880,1569],{"class":76},[63,1882,1883,1885],{"class":65,"line":545},[63,1884,1561],{"class":76},[63,1886,1576],{"class":84},[63,1888,1889],{"class":65,"line":559},[63,1890,1581],{"class":76},[63,1892,1893,1895],{"class":65,"line":564},[63,1894,1561],{"class":76},[63,1896,1588],{"class":84},[63,1898,1899],{"class":65,"line":569},[63,1900,248],{"class":84},[63,1902,1903,1905,1908,1910,1913],{"class":65,"line":576},[63,1904,77],{"class":76},[63,1906,1907],{"class":80}," Son3",[63,1909,1766],{"class":84},[63,1911,1912],{"class":76},"private",[63,1914,1862],{"class":80},[63,1916,1917],{"class":65,"line":587},[63,1918,91],{"class":84},[63,1920,1921],{"class":65,"line":592},[63,1922,97],{"class":76},[63,1924,1925,1927,1929],{"class":65,"line":598},[63,1926,103],{"class":76},[63,1928,1630],{"class":80},[63,1930,109],{"class":84},[63,1932,1933],{"class":65,"line":613},[63,1934,115],{"class":84},[63,1936,1937,1939],{"class":65,"line":619},[63,1938,1641],{"class":84},[63,1940,1941],{"class":69}," \u002F\u002F可访问 private权限\n",[63,1943,1944,1946],{"class":65,"line":631},[63,1945,1649],{"class":84},[63,1947,1941],{"class":69},[63,1949,1950,1952],{"class":65,"line":641},[63,1951,1657],{"class":69},[63,1953,1660],{"class":69},[63,1955,1956],{"class":65,"line":651},[63,1957,140],{"class":84},[63,1959,1960],{"class":65,"line":661},[63,1961,248],{"class":84},[63,1963,1964,1966,1969,1971,1973],{"class":65,"line":675},[63,1965,77],{"class":76},[63,1967,1968],{"class":80}," GrandSon3",[63,1970,1611],{"class":84},[63,1972,1049],{"class":76},[63,1974,1975],{"class":80}," Son3\n",[63,1977,1978],{"class":65,"line":680},[63,1979,91],{"class":84},[63,1981,1982],{"class":65,"line":686},[63,1983,97],{"class":76},[63,1985,1986,1988,1990],{"class":65,"line":700},[63,1987,103],{"class":76},[63,1989,1630],{"class":80},[63,1991,109],{"class":84},[63,1993,1994],{"class":65,"line":706},[63,1995,115],{"class":84},[63,1997,1998],{"class":65,"line":716},[63,1999,2000],{"class":69},"        \u002F\u002FSon3是私有继承，所以继承Son3的属性在GrandSon3中都无法访问到\n",[63,2002,2003],{"class":65,"line":725},[63,2004,2005],{"class":69},"        \u002F\u002Fm_A;\n",[63,2007,2008],{"class":65,"line":734},[63,2009,2010],{"class":69},"        \u002F\u002Fm_B;\n",[63,2012,2013],{"class":65,"line":743},[63,2014,2015],{"class":69},"        \u002F\u002Fm_C;\n",[63,2017,2018],{"class":65,"line":756},[63,2019,140],{"class":84},[63,2021,2022],{"class":65,"line":761},[63,2023,248],{"class":84},[15,2025,2026,2028,2029,2032],{},[18,2027,895],{}," 此代码块不含 ",[60,2030,2031],{},"main"," 函数，是语法、接口或分文件示例，不能独立运行，因此没有终端输出。",[38,2034,2035],{"id":2035},"继承中的对象模型",[15,2037,2038],{},"**问题：**从父类继承过来的成员，哪些属于子类对象中？",[15,2040,2041],{},[18,2042,1533],{},[53,2044,2046],{"className":55,"code":2045,"language":57,"meta":58,"style":58},"class Base\n{\npublic:\n    int m_A;\nprotected:\n    int m_B;\nprivate:\n    int m_C; \u002F\u002F私有成员只是被隐藏了，但是还是会继承下去\n};\n\n\u002F\u002F公共继承\nclass Son :public Base\n{\npublic:\n    int m_D;\n};\n\nvoid test01()\n{\n    cout \u003C\u003C \"sizeof Son = \" \u003C\u003C sizeof(Son) \u003C\u003C endl;\n}\n\nint main() {\n\n    test01();\n\n\n    return 0;\n}\n",[60,2047,2048,2055,2059,2063,2069,2073,2079,2083,2093,2097,2101,2105,2118,2122,2126,2133,2137,2141,2149,2153,2174,2178,2182,2190,2194,2200,2204,2208,2216],{"__ignoreMap":58},[63,2049,2050,2052],{"class":65,"line":66},[63,2051,77],{"class":76},[63,2053,2054],{"class":80}," Base\n",[63,2056,2057],{"class":65,"line":73},[63,2058,91],{"class":84},[63,2060,2061],{"class":65,"line":88},[63,2062,97],{"class":76},[63,2064,2065,2067],{"class":65,"line":94},[63,2066,1561],{"class":76},[63,2068,1564],{"class":84},[63,2070,2071],{"class":65,"line":100},[63,2072,1569],{"class":76},[63,2074,2075,2077],{"class":65,"line":112},[63,2076,1561],{"class":76},[63,2078,1576],{"class":84},[63,2080,2081],{"class":65,"line":118},[63,2082,1581],{"class":76},[63,2084,2085,2087,2090],{"class":65,"line":137},[63,2086,1561],{"class":76},[63,2088,2089],{"class":84}," m_C;",[63,2091,2092],{"class":69}," \u002F\u002F私有成员只是被隐藏了，但是还是会继承下去\n",[63,2094,2095],{"class":65,"line":143},[63,2096,248],{"class":84},[63,2098,2099],{"class":65,"line":153},[63,2100,573],{"emptyLinePlaceholder":572},[63,2102,2103],{"class":65,"line":158},[63,2104,1601],{"class":69},[63,2106,2107,2109,2112,2114,2116],{"class":65,"line":172},[63,2108,77],{"class":76},[63,2110,2111],{"class":80}," Son",[63,2113,1611],{"class":84},[63,2115,1049],{"class":76},[63,2117,2054],{"class":80},[63,2119,2120],{"class":65,"line":177},[63,2121,91],{"class":84},[63,2123,2124],{"class":65,"line":187},[63,2125,97],{"class":76},[63,2127,2128,2130],{"class":65,"line":192},[63,2129,1561],{"class":76},[63,2131,2132],{"class":84}," m_D;\n",[63,2134,2135],{"class":65,"line":206},[63,2136,248],{"class":84},[63,2138,2139],{"class":65,"line":211},[63,2140,573],{"emptyLinePlaceholder":572},[63,2142,2143,2145,2147],{"class":65,"line":221},[63,2144,579],{"class":76},[63,2146,582],{"class":80},[63,2148,109],{"class":84},[63,2150,2151],{"class":65,"line":226},[63,2152,91],{"class":84},[63,2154,2155,2157,2159,2162,2164,2167,2170,2172],{"class":65,"line":240},[63,2156,601],{"class":84},[63,2158,124],{"class":76},[63,2160,2161],{"class":127}," \"sizeof Son = \"",[63,2163,131],{"class":76},[63,2165,2166],{"class":76}," sizeof",[63,2168,2169],{"class":84},"(Son) ",[63,2171,124],{"class":76},[63,2173,134],{"class":84},[63,2175,2176],{"class":65,"line":245},[63,2177,832],{"class":84},[63,2179,2180],{"class":65,"line":251},[63,2181,573],{"emptyLinePlaceholder":572},[63,2183,2184,2186,2188],{"class":65,"line":257},[63,2185,843],{"class":76},[63,2187,846],{"class":80},[63,2189,849],{"class":84},[63,2191,2192],{"class":65,"line":265},[63,2193,573],{"emptyLinePlaceholder":572},[63,2195,2196,2198],{"class":65,"line":270},[63,2197,860],{"class":80},[63,2199,628],{"class":84},[63,2201,2202],{"class":65,"line":275},[63,2203,573],{"emptyLinePlaceholder":572},[63,2205,2206],{"class":65,"line":284},[63,2207,573],{"emptyLinePlaceholder":572},[63,2209,2210,2212,2214],{"class":65,"line":289},[63,2211,878],{"class":76},[63,2213,882],{"class":881},[63,2215,885],{"class":84},[63,2217,2218],{"class":65,"line":302},[63,2219,832],{"class":84},[15,2221,2222],{},[18,2223,2224],{},"运行结果（类型大小或类型名可能随编译器和平台变化）：",[53,2226,2229],{"className":2227,"code":2228,"language":901,"meta":58},[899],"sizeof Son = 16\n",[60,2230,2228],{"__ignoreMap":58},[15,2232,2233],{},"利用工具查看：",[15,2235,2236],{},[27,2237],{"alt":2238,"src":2239},"1545881904150","https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002Fstage3-1545881904150-4e4c03aedc.webp",[15,2241,2242],{},"打开工具窗口后，定位到当前CPP文件的盘符",[15,2244,2245],{},"然后输入： cl \u002Fd1 reportSingleClassLayout查看的类名   所属文件名",[15,2247,2248],{},"效果如下图：",[15,2250,2251],{},[27,2252],{"alt":2253,"src":2254},"1545882158050","https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002Fstage3-1545882158050-d4f7cbf46b.webp",[2256,2257,2258],"blockquote",{},[15,2259,2260],{},"结论： 父类中私有成员也是被子类继承下去了，只是由编译器给隐藏后访问不到",[38,2262,2263],{"id":2263},"继承中构造和析构顺序",[15,2265,2266],{},"子类继承父类后，当创建子类对象，也会调用父类的构造函数",[15,2268,2269],{},"问题：父类和子类的构造和析构顺序是谁先谁后？",[15,2271,2272],{},[18,2273,1533],{},[53,2275,2277],{"className":55,"code":2276,"language":57,"meta":58,"style":58},"class Base \n{\npublic:\n    Base()\n    {\n        cout \u003C\u003C \"Base构造函数!\" \u003C\u003C endl;\n    }\n    ~Base()\n    {\n        cout \u003C\u003C \"Base析构函数!\" \u003C\u003C endl;\n    }\n};\n\nclass Son : public Base\n{\npublic:\n    Son()\n    {\n        cout \u003C\u003C \"Son构造函数!\" \u003C\u003C endl;\n    }\n    ~Son()\n    {\n        cout \u003C\u003C \"Son析构函数!\" \u003C\u003C endl;\n    }\n\n};\n\nvoid test01()\n{\n    \u002F\u002F继承中 先调用父类构造函数，再调用子类构造函数，析构顺序与构造相反\n    Son s;\n}\n\nint main() {\n\n    test01();\n\n\n    return 0;\n}\n",[60,2278,2279,2288,2292,2296,2303,2307,2320,2324,2331,2335,2348,2352,2356,2360,2372,2376,2380,2387,2391,2404,2408,2415,2419,2432,2436,2440,2444,2448,2456,2460,2465,2470,2474,2478,2486,2490,2496,2500,2504,2512],{"__ignoreMap":58},[63,2280,2281,2283,2286],{"class":65,"line":66},[63,2282,77],{"class":76},[63,2284,2285],{"class":80}," Base",[63,2287,85],{"class":84},[63,2289,2290],{"class":65,"line":73},[63,2291,91],{"class":84},[63,2293,2294],{"class":65,"line":88},[63,2295,97],{"class":76},[63,2297,2298,2301],{"class":65,"line":94},[63,2299,2300],{"class":80},"    Base",[63,2302,109],{"class":84},[63,2304,2305],{"class":65,"line":100},[63,2306,115],{"class":84},[63,2308,2309,2311,2313,2316,2318],{"class":65,"line":112},[63,2310,121],{"class":84},[63,2312,124],{"class":76},[63,2314,2315],{"class":127}," \"Base构造函数!\"",[63,2317,131],{"class":76},[63,2319,134],{"class":84},[63,2321,2322],{"class":65,"line":118},[63,2323,140],{"class":84},[63,2325,2326,2329],{"class":65,"line":137},[63,2327,2328],{"class":80},"    ~Base",[63,2330,109],{"class":84},[63,2332,2333],{"class":65,"line":143},[63,2334,115],{"class":84},[63,2336,2337,2339,2341,2344,2346],{"class":65,"line":153},[63,2338,121],{"class":84},[63,2340,124],{"class":76},[63,2342,2343],{"class":127}," \"Base析构函数!\"",[63,2345,131],{"class":76},[63,2347,134],{"class":84},[63,2349,2350],{"class":65,"line":158},[63,2351,140],{"class":84},[63,2353,2354],{"class":65,"line":172},[63,2355,248],{"class":84},[63,2357,2358],{"class":65,"line":177},[63,2359,573],{"emptyLinePlaceholder":572},[63,2361,2362,2364,2366,2368,2370],{"class":65,"line":187},[63,2363,77],{"class":76},[63,2365,2111],{"class":80},[63,2367,1046],{"class":84},[63,2369,1049],{"class":76},[63,2371,2054],{"class":80},[63,2373,2374],{"class":65,"line":192},[63,2375,91],{"class":84},[63,2377,2378],{"class":65,"line":206},[63,2379,97],{"class":76},[63,2381,2382,2385],{"class":65,"line":211},[63,2383,2384],{"class":80},"    Son",[63,2386,109],{"class":84},[63,2388,2389],{"class":65,"line":221},[63,2390,115],{"class":84},[63,2392,2393,2395,2397,2400,2402],{"class":65,"line":226},[63,2394,121],{"class":84},[63,2396,124],{"class":76},[63,2398,2399],{"class":127}," \"Son构造函数!\"",[63,2401,131],{"class":76},[63,2403,134],{"class":84},[63,2405,2406],{"class":65,"line":240},[63,2407,140],{"class":84},[63,2409,2410,2413],{"class":65,"line":245},[63,2411,2412],{"class":80},"    ~Son",[63,2414,109],{"class":84},[63,2416,2417],{"class":65,"line":251},[63,2418,115],{"class":84},[63,2420,2421,2423,2425,2428,2430],{"class":65,"line":257},[63,2422,121],{"class":84},[63,2424,124],{"class":76},[63,2426,2427],{"class":127}," \"Son析构函数!\"",[63,2429,131],{"class":76},[63,2431,134],{"class":84},[63,2433,2434],{"class":65,"line":265},[63,2435,140],{"class":84},[63,2437,2438],{"class":65,"line":270},[63,2439,573],{"emptyLinePlaceholder":572},[63,2441,2442],{"class":65,"line":275},[63,2443,248],{"class":84},[63,2445,2446],{"class":65,"line":284},[63,2447,573],{"emptyLinePlaceholder":572},[63,2449,2450,2452,2454],{"class":65,"line":289},[63,2451,579],{"class":76},[63,2453,582],{"class":80},[63,2455,109],{"class":84},[63,2457,2458],{"class":65,"line":302},[63,2459,91],{"class":84},[63,2461,2462],{"class":65,"line":307},[63,2463,2464],{"class":69},"    \u002F\u002F继承中 先调用父类构造函数，再调用子类构造函数，析构顺序与构造相反\n",[63,2466,2467],{"class":65,"line":316},[63,2468,2469],{"class":84},"    Son s;\n",[63,2471,2472],{"class":65,"line":321},[63,2473,832],{"class":84},[63,2475,2476],{"class":65,"line":334},[63,2477,573],{"emptyLinePlaceholder":572},[63,2479,2480,2482,2484],{"class":65,"line":339},[63,2481,843],{"class":76},[63,2483,846],{"class":80},[63,2485,849],{"class":84},[63,2487,2488],{"class":65,"line":348},[63,2489,573],{"emptyLinePlaceholder":572},[63,2491,2492,2494],{"class":65,"line":353},[63,2493,860],{"class":80},[63,2495,628],{"class":84},[63,2497,2498],{"class":65,"line":366},[63,2499,573],{"emptyLinePlaceholder":572},[63,2501,2502],{"class":65,"line":371},[63,2503,573],{"emptyLinePlaceholder":572},[63,2505,2506,2508,2510],{"class":65,"line":380},[63,2507,878],{"class":76},[63,2509,882],{"class":881},[63,2511,885],{"class":84},[63,2513,2514],{"class":65,"line":385},[63,2515,832],{"class":84},[15,2517,2518],{},[18,2519,895],{},[53,2521,2524],{"className":2522,"code":2523,"language":901,"meta":58},[899],"Base构造函数!\nSon构造函数!\nSon析构函数!\nBase析构函数!\n",[60,2525,2523],{"__ignoreMap":58},[2256,2527,2528],{},[15,2529,2530],{},"总结：继承中 先调用父类构造函数，再调用子类构造函数，析构顺序与构造相反",[38,2532,2533],{"id":2533},"继承同名成员处理方式",[15,2535,2536],{},"问题：当子类与父类出现同名的成员，如何通过子类对象，访问到子类或父类中同名的数据呢？",[1512,2538,2539,2542],{},[1515,2540,2541],{},"访问子类同名成员   直接访问即可",[1515,2543,2544],{},"访问父类同名成员   需要加作用域",[15,2546,2547],{},[18,2548,1533],{},[53,2550,2552],{"className":55,"code":2551,"language":57,"meta":58,"style":58},"class Base {\npublic:\n    Base()\n    {\n        m_A = 100;\n    }\n\n    void func()\n    {\n        cout \u003C\u003C \"Base - func()调用\" \u003C\u003C endl;\n    }\n\n    void func(int a)\n    {\n        cout \u003C\u003C \"Base - func(int a)调用\" \u003C\u003C endl;\n    }\n\npublic:\n    int m_A;\n};\n\nclass Son : public Base {\npublic:\n    Son()\n    {\n        m_A = 200;\n    }\n\n    \u002F\u002F当子类与父类拥有同名的成员函数，子类会隐藏父类中所有版本的同名成员函数\n    \u002F\u002F如果想访问父类中被隐藏的同名成员函数，需要加父类的作用域\n    void func()\n    {\n        cout \u003C\u003C \"Son - func()调用\" \u003C\u003C endl;\n    }\npublic:\n    int m_A;\n};\n\nvoid test01()\n{\n    Son s;\n\n    cout \u003C\u003C \"Son下的m_A = \" \u003C\u003C s.m_A \u003C\u003C endl;\n    cout \u003C\u003C \"Base下的m_A = \" \u003C\u003C s.Base::m_A \u003C\u003C endl;\n\n    s.func();\n    s.Base::func();\n    s.Base::func(10);\n\n}\nint main() {\n\n    test01();\n\n    return EXIT_SUCCESS;\n}\n",[60,2553,2554,2563,2567,2573,2577,2590,2594,2598,2606,2610,2623,2627,2631,2649,2653,2666,2670,2674,2678,2684,2688,2692,2706,2710,2716,2720,2731,2735,2739,2744,2749,2757,2761,2774,2778,2782,2788,2792,2796,2804,2808,2812,2816,2834,2852,2856,2866,2875,2889,2893,2897,2905,2909,2915,2919,2926],{"__ignoreMap":58},[63,2555,2556,2558,2560],{"class":65,"line":66},[63,2557,77],{"class":76},[63,2559,2285],{"class":80},[63,2561,2562],{"class":84}," {\n",[63,2564,2565],{"class":65,"line":73},[63,2566,97],{"class":76},[63,2568,2569,2571],{"class":65,"line":88},[63,2570,2300],{"class":80},[63,2572,109],{"class":84},[63,2574,2575],{"class":65,"line":94},[63,2576,115],{"class":84},[63,2578,2579,2582,2585,2588],{"class":65,"line":100},[63,2580,2581],{"class":84},"        m_A ",[63,2583,2584],{"class":76},"=",[63,2586,2587],{"class":881}," 100",[63,2589,885],{"class":84},[63,2591,2592],{"class":65,"line":112},[63,2593,140],{"class":84},[63,2595,2596],{"class":65,"line":118},[63,2597,573],{"emptyLinePlaceholder":572},[63,2599,2600,2602,2604],{"class":65,"line":137},[63,2601,103],{"class":76},[63,2603,1630],{"class":80},[63,2605,109],{"class":84},[63,2607,2608],{"class":65,"line":143},[63,2609,115],{"class":84},[63,2611,2612,2614,2616,2619,2621],{"class":65,"line":153},[63,2613,121],{"class":84},[63,2615,124],{"class":76},[63,2617,2618],{"class":127}," \"Base - func()调用\"",[63,2620,131],{"class":76},[63,2622,134],{"class":84},[63,2624,2625],{"class":65,"line":158},[63,2626,140],{"class":84},[63,2628,2629],{"class":65,"line":172},[63,2630,573],{"emptyLinePlaceholder":572},[63,2632,2633,2635,2637,2640,2642,2646],{"class":65,"line":177},[63,2634,103],{"class":76},[63,2636,1630],{"class":80},[63,2638,2639],{"class":84},"(",[63,2641,843],{"class":76},[63,2643,2645],{"class":2644},"s4XuR"," a",[63,2647,2648],{"class":84},")\n",[63,2650,2651],{"class":65,"line":187},[63,2652,115],{"class":84},[63,2654,2655,2657,2659,2662,2664],{"class":65,"line":192},[63,2656,121],{"class":84},[63,2658,124],{"class":76},[63,2660,2661],{"class":127}," \"Base - func(int a)调用\"",[63,2663,131],{"class":76},[63,2665,134],{"class":84},[63,2667,2668],{"class":65,"line":206},[63,2669,140],{"class":84},[63,2671,2672],{"class":65,"line":211},[63,2673,573],{"emptyLinePlaceholder":572},[63,2675,2676],{"class":65,"line":221},[63,2677,97],{"class":76},[63,2679,2680,2682],{"class":65,"line":226},[63,2681,1561],{"class":76},[63,2683,1564],{"class":84},[63,2685,2686],{"class":65,"line":240},[63,2687,248],{"class":84},[63,2689,2690],{"class":65,"line":245},[63,2691,573],{"emptyLinePlaceholder":572},[63,2693,2694,2696,2698,2700,2702,2704],{"class":65,"line":251},[63,2695,77],{"class":76},[63,2697,2111],{"class":80},[63,2699,1046],{"class":84},[63,2701,1049],{"class":76},[63,2703,2285],{"class":80},[63,2705,2562],{"class":84},[63,2707,2708],{"class":65,"line":257},[63,2709,97],{"class":76},[63,2711,2712,2714],{"class":65,"line":265},[63,2713,2384],{"class":80},[63,2715,109],{"class":84},[63,2717,2718],{"class":65,"line":270},[63,2719,115],{"class":84},[63,2721,2722,2724,2726,2729],{"class":65,"line":275},[63,2723,2581],{"class":84},[63,2725,2584],{"class":76},[63,2727,2728],{"class":881}," 200",[63,2730,885],{"class":84},[63,2732,2733],{"class":65,"line":284},[63,2734,140],{"class":84},[63,2736,2737],{"class":65,"line":289},[63,2738,573],{"emptyLinePlaceholder":572},[63,2740,2741],{"class":65,"line":302},[63,2742,2743],{"class":69},"    \u002F\u002F当子类与父类拥有同名的成员函数，子类会隐藏父类中所有版本的同名成员函数\n",[63,2745,2746],{"class":65,"line":307},[63,2747,2748],{"class":69},"    \u002F\u002F如果想访问父类中被隐藏的同名成员函数，需要加父类的作用域\n",[63,2750,2751,2753,2755],{"class":65,"line":316},[63,2752,103],{"class":76},[63,2754,1630],{"class":80},[63,2756,109],{"class":84},[63,2758,2759],{"class":65,"line":321},[63,2760,115],{"class":84},[63,2762,2763,2765,2767,2770,2772],{"class":65,"line":334},[63,2764,121],{"class":84},[63,2766,124],{"class":76},[63,2768,2769],{"class":127}," \"Son - func()调用\"",[63,2771,131],{"class":76},[63,2773,134],{"class":84},[63,2775,2776],{"class":65,"line":339},[63,2777,140],{"class":84},[63,2779,2780],{"class":65,"line":348},[63,2781,97],{"class":76},[63,2783,2784,2786],{"class":65,"line":353},[63,2785,1561],{"class":76},[63,2787,1564],{"class":84},[63,2789,2790],{"class":65,"line":366},[63,2791,248],{"class":84},[63,2793,2794],{"class":65,"line":371},[63,2795,573],{"emptyLinePlaceholder":572},[63,2797,2798,2800,2802],{"class":65,"line":380},[63,2799,579],{"class":76},[63,2801,582],{"class":80},[63,2803,109],{"class":84},[63,2805,2806],{"class":65,"line":385},[63,2807,91],{"class":84},[63,2809,2810],{"class":65,"line":399},[63,2811,2469],{"class":84},[63,2813,2814],{"class":65,"line":404},[63,2815,573],{"emptyLinePlaceholder":572},[63,2817,2818,2820,2822,2825,2827,2830,2832],{"class":65,"line":409},[63,2819,601],{"class":84},[63,2821,124],{"class":76},[63,2823,2824],{"class":127}," \"Son下的m_A = \"",[63,2826,131],{"class":76},[63,2828,2829],{"class":84}," s.m_A ",[63,2831,124],{"class":76},[63,2833,134],{"class":84},[63,2835,2836,2838,2840,2843,2845,2848,2850],{"class":65,"line":415},[63,2837,601],{"class":84},[63,2839,124],{"class":76},[63,2841,2842],{"class":127}," \"Base下的m_A = \"",[63,2844,131],{"class":76},[63,2846,2847],{"class":84}," s.Base::m_A ",[63,2849,124],{"class":76},[63,2851,134],{"class":84},[63,2853,2854],{"class":65,"line":425},[63,2855,573],{"emptyLinePlaceholder":572},[63,2857,2858,2861,2864],{"class":65,"line":430},[63,2859,2860],{"class":84},"    s.",[63,2862,2863],{"class":80},"func",[63,2865,628],{"class":84},[63,2867,2868,2871,2873],{"class":65,"line":435},[63,2869,2870],{"class":84},"    s.Base::",[63,2872,2863],{"class":80},[63,2874,628],{"class":84},[63,2876,2877,2879,2881,2883,2886],{"class":65,"line":444},[63,2878,2870],{"class":84},[63,2880,2863],{"class":80},[63,2882,2639],{"class":84},[63,2884,2885],{"class":881},"10",[63,2887,2888],{"class":84},");\n",[63,2890,2891],{"class":65,"line":449},[63,2892,573],{"emptyLinePlaceholder":572},[63,2894,2895],{"class":65,"line":462},[63,2896,832],{"class":84},[63,2898,2899,2901,2903],{"class":65,"line":467},[63,2900,843],{"class":76},[63,2902,846],{"class":80},[63,2904,849],{"class":84},[63,2906,2907],{"class":65,"line":476},[63,2908,573],{"emptyLinePlaceholder":572},[63,2910,2911,2913],{"class":65,"line":481},[63,2912,860],{"class":80},[63,2914,628],{"class":84},[63,2916,2917],{"class":65,"line":494},[63,2918,573],{"emptyLinePlaceholder":572},[63,2920,2921,2923],{"class":65,"line":499},[63,2922,878],{"class":76},[63,2924,2925],{"class":84}," EXIT_SUCCESS;\n",[63,2927,2928],{"class":65,"line":508},[63,2929,832],{"class":84},[15,2931,2932],{},[18,2933,895],{},[53,2935,2938],{"className":2936,"code":2937,"language":901,"meta":58},[899],"Son下的m_A = 200\nBase下的m_A = 100\nSon - func()调用\nBase - func()调用\nBase - func(int a)调用\n",[60,2939,2937],{"__ignoreMap":58},[15,2941,1472],{},[2943,2944,2945,2948,2951],"ol",{},[1515,2946,2947],{},"子类对象可以直接访问到子类中同名成员",[1515,2949,2950],{},"子类对象加作用域可以访问到父类同名成员",[1515,2952,2953],{},"当子类与父类拥有同名的成员函数，子类会隐藏父类中同名成员函数，加作用域可以访问到父类中同名函数",[38,2955,2956],{"id":2956},"继承同名静态成员处理方式",[15,2958,2959],{},"问题：继承中同名的静态成员在子类对象上如何进行访问？",[15,2961,2962],{},"静态成员和非静态成员出现同名，处理方式一致",[1512,2964,2965,2967],{},[1515,2966,2541],{},[1515,2968,2544],{},[15,2970,2971],{},[18,2972,1533],{},[53,2974,2976],{"className":55,"code":2975,"language":57,"meta":58,"style":58},"class Base {\npublic:\n    static void func()\n    {\n        cout \u003C\u003C \"Base - static void func()\" \u003C\u003C endl;\n    }\n    static void func(int a)\n    {\n        cout \u003C\u003C \"Base - static void func(int a)\" \u003C\u003C endl;\n    }\n\n    static int m_A;\n};\n\nint Base::m_A = 100;\n\nclass Son : public Base {\npublic:\n    static void func()\n    {\n        cout \u003C\u003C \"Son - static void func()\" \u003C\u003C endl;\n    }\n    static int m_A;\n};\n\nint Son::m_A = 200;\n\n\u002F\u002F同名成员属性\nvoid test01()\n{\n    \u002F\u002F通过对象访问\n    cout \u003C\u003C \"通过对象访问： \" \u003C\u003C endl;\n    Son s;\n    cout \u003C\u003C \"Son  下 m_A = \" \u003C\u003C s.m_A \u003C\u003C endl;\n    cout \u003C\u003C \"Base 下 m_A = \" \u003C\u003C s.Base::m_A \u003C\u003C endl;\n\n    \u002F\u002F通过类名访问\n    cout \u003C\u003C \"通过类名访问： \" \u003C\u003C endl;\n    cout \u003C\u003C \"Son  下 m_A = \" \u003C\u003C Son::m_A \u003C\u003C endl;\n    cout \u003C\u003C \"Base 下 m_A = \" \u003C\u003C Son::Base::m_A \u003C\u003C endl;\n}\n\n\u002F\u002F同名成员函数\nvoid test02()\n{\n    \u002F\u002F通过对象访问\n    cout \u003C\u003C \"通过对象访问： \" \u003C\u003C endl;\n    Son s;\n    s.func();\n    s.Base::func();\n\n    cout \u003C\u003C \"通过类名访问： \" \u003C\u003C endl;\n    Son::func();\n    Son::Base::func();\n    \u002F\u002F出现同名，子类会隐藏掉父类中所有同名成员函数，需要加作作用域访问\n    Son::Base::func(100);\n}\nint main() {\n\n    \u002F\u002Ftest01();\n    test02();\n\n\n    return 0;\n}\n",[60,2977,2978,2986,2990,3002,3006,3019,3023,3039,3043,3056,3060,3064,3073,3077,3081,3096,3100,3114,3118,3128,3132,3145,3149,3157,3161,3165,3179,3183,3188,3196,3200,3205,3218,3222,3239,3256,3260,3265,3278,3296,3320,3324,3328,3333,3342,3346,3350,3362,3366,3374,3382,3386,3398,3408,3422,3427,3446,3450,3458,3462,3467,3474,3478,3482,3490],{"__ignoreMap":58},[63,2979,2980,2982,2984],{"class":65,"line":66},[63,2981,77],{"class":76},[63,2983,2285],{"class":80},[63,2985,2562],{"class":84},[63,2987,2988],{"class":65,"line":73},[63,2989,97],{"class":76},[63,2991,2992,2995,2998,3000],{"class":65,"line":88},[63,2993,2994],{"class":76},"    static",[63,2996,2997],{"class":76}," void",[63,2999,1630],{"class":80},[63,3001,109],{"class":84},[63,3003,3004],{"class":65,"line":94},[63,3005,115],{"class":84},[63,3007,3008,3010,3012,3015,3017],{"class":65,"line":100},[63,3009,121],{"class":84},[63,3011,124],{"class":76},[63,3013,3014],{"class":127}," \"Base - static void func()\"",[63,3016,131],{"class":76},[63,3018,134],{"class":84},[63,3020,3021],{"class":65,"line":112},[63,3022,140],{"class":84},[63,3024,3025,3027,3029,3031,3033,3035,3037],{"class":65,"line":118},[63,3026,2994],{"class":76},[63,3028,2997],{"class":76},[63,3030,1630],{"class":80},[63,3032,2639],{"class":84},[63,3034,843],{"class":76},[63,3036,2645],{"class":2644},[63,3038,2648],{"class":84},[63,3040,3041],{"class":65,"line":137},[63,3042,115],{"class":84},[63,3044,3045,3047,3049,3052,3054],{"class":65,"line":143},[63,3046,121],{"class":84},[63,3048,124],{"class":76},[63,3050,3051],{"class":127}," \"Base - static void func(int a)\"",[63,3053,131],{"class":76},[63,3055,134],{"class":84},[63,3057,3058],{"class":65,"line":153},[63,3059,140],{"class":84},[63,3061,3062],{"class":65,"line":158},[63,3063,573],{"emptyLinePlaceholder":572},[63,3065,3066,3068,3071],{"class":65,"line":172},[63,3067,2994],{"class":76},[63,3069,3070],{"class":76}," int",[63,3072,1564],{"class":84},[63,3074,3075],{"class":65,"line":177},[63,3076,248],{"class":84},[63,3078,3079],{"class":65,"line":187},[63,3080,573],{"emptyLinePlaceholder":572},[63,3082,3083,3085,3087,3090,3092,3094],{"class":65,"line":192},[63,3084,843],{"class":76},[63,3086,2285],{"class":80},[63,3088,3089],{"class":84},"::m_A ",[63,3091,2584],{"class":76},[63,3093,2587],{"class":881},[63,3095,885],{"class":84},[63,3097,3098],{"class":65,"line":206},[63,3099,573],{"emptyLinePlaceholder":572},[63,3101,3102,3104,3106,3108,3110,3112],{"class":65,"line":211},[63,3103,77],{"class":76},[63,3105,2111],{"class":80},[63,3107,1046],{"class":84},[63,3109,1049],{"class":76},[63,3111,2285],{"class":80},[63,3113,2562],{"class":84},[63,3115,3116],{"class":65,"line":221},[63,3117,97],{"class":76},[63,3119,3120,3122,3124,3126],{"class":65,"line":226},[63,3121,2994],{"class":76},[63,3123,2997],{"class":76},[63,3125,1630],{"class":80},[63,3127,109],{"class":84},[63,3129,3130],{"class":65,"line":240},[63,3131,115],{"class":84},[63,3133,3134,3136,3138,3141,3143],{"class":65,"line":245},[63,3135,121],{"class":84},[63,3137,124],{"class":76},[63,3139,3140],{"class":127}," \"Son - static void func()\"",[63,3142,131],{"class":76},[63,3144,134],{"class":84},[63,3146,3147],{"class":65,"line":251},[63,3148,140],{"class":84},[63,3150,3151,3153,3155],{"class":65,"line":257},[63,3152,2994],{"class":76},[63,3154,3070],{"class":76},[63,3156,1564],{"class":84},[63,3158,3159],{"class":65,"line":265},[63,3160,248],{"class":84},[63,3162,3163],{"class":65,"line":270},[63,3164,573],{"emptyLinePlaceholder":572},[63,3166,3167,3169,3171,3173,3175,3177],{"class":65,"line":275},[63,3168,843],{"class":76},[63,3170,2111],{"class":80},[63,3172,3089],{"class":84},[63,3174,2584],{"class":76},[63,3176,2728],{"class":881},[63,3178,885],{"class":84},[63,3180,3181],{"class":65,"line":284},[63,3182,573],{"emptyLinePlaceholder":572},[63,3184,3185],{"class":65,"line":289},[63,3186,3187],{"class":69},"\u002F\u002F同名成员属性\n",[63,3189,3190,3192,3194],{"class":65,"line":302},[63,3191,579],{"class":76},[63,3193,582],{"class":80},[63,3195,109],{"class":84},[63,3197,3198],{"class":65,"line":307},[63,3199,91],{"class":84},[63,3201,3202],{"class":65,"line":316},[63,3203,3204],{"class":69},"    \u002F\u002F通过对象访问\n",[63,3206,3207,3209,3211,3214,3216],{"class":65,"line":321},[63,3208,601],{"class":84},[63,3210,124],{"class":76},[63,3212,3213],{"class":127}," \"通过对象访问： \"",[63,3215,131],{"class":76},[63,3217,134],{"class":84},[63,3219,3220],{"class":65,"line":334},[63,3221,2469],{"class":84},[63,3223,3224,3226,3228,3231,3233,3235,3237],{"class":65,"line":339},[63,3225,601],{"class":84},[63,3227,124],{"class":76},[63,3229,3230],{"class":127}," \"Son  下 m_A = \"",[63,3232,131],{"class":76},[63,3234,2829],{"class":84},[63,3236,124],{"class":76},[63,3238,134],{"class":84},[63,3240,3241,3243,3245,3248,3250,3252,3254],{"class":65,"line":348},[63,3242,601],{"class":84},[63,3244,124],{"class":76},[63,3246,3247],{"class":127}," \"Base 下 m_A = \"",[63,3249,131],{"class":76},[63,3251,2847],{"class":84},[63,3253,124],{"class":76},[63,3255,134],{"class":84},[63,3257,3258],{"class":65,"line":353},[63,3259,573],{"emptyLinePlaceholder":572},[63,3261,3262],{"class":65,"line":366},[63,3263,3264],{"class":69},"    \u002F\u002F通过类名访问\n",[63,3266,3267,3269,3271,3274,3276],{"class":65,"line":371},[63,3268,601],{"class":84},[63,3270,124],{"class":76},[63,3272,3273],{"class":127}," \"通过类名访问： \"",[63,3275,131],{"class":76},[63,3277,134],{"class":84},[63,3279,3280,3282,3284,3286,3288,3290,3292,3294],{"class":65,"line":380},[63,3281,601],{"class":84},[63,3283,124],{"class":76},[63,3285,3230],{"class":127},[63,3287,131],{"class":76},[63,3289,2111],{"class":80},[63,3291,3089],{"class":84},[63,3293,124],{"class":76},[63,3295,134],{"class":84},[63,3297,3298,3300,3302,3304,3306,3308,3311,3314,3316,3318],{"class":65,"line":385},[63,3299,601],{"class":84},[63,3301,124],{"class":76},[63,3303,3247],{"class":127},[63,3305,131],{"class":76},[63,3307,2111],{"class":80},[63,3309,3310],{"class":84},"::",[63,3312,3313],{"class":80},"Base",[63,3315,3089],{"class":84},[63,3317,124],{"class":76},[63,3319,134],{"class":84},[63,3321,3322],{"class":65,"line":399},[63,3323,832],{"class":84},[63,3325,3326],{"class":65,"line":404},[63,3327,573],{"emptyLinePlaceholder":572},[63,3329,3330],{"class":65,"line":409},[63,3331,3332],{"class":69},"\u002F\u002F同名成员函数\n",[63,3334,3335,3337,3340],{"class":65,"line":415},[63,3336,579],{"class":76},[63,3338,3339],{"class":80}," test02",[63,3341,109],{"class":84},[63,3343,3344],{"class":65,"line":425},[63,3345,91],{"class":84},[63,3347,3348],{"class":65,"line":430},[63,3349,3204],{"class":69},[63,3351,3352,3354,3356,3358,3360],{"class":65,"line":435},[63,3353,601],{"class":84},[63,3355,124],{"class":76},[63,3357,3213],{"class":127},[63,3359,131],{"class":76},[63,3361,134],{"class":84},[63,3363,3364],{"class":65,"line":444},[63,3365,2469],{"class":84},[63,3367,3368,3370,3372],{"class":65,"line":449},[63,3369,2860],{"class":84},[63,3371,2863],{"class":80},[63,3373,628],{"class":84},[63,3375,3376,3378,3380],{"class":65,"line":462},[63,3377,2870],{"class":84},[63,3379,2863],{"class":80},[63,3381,628],{"class":84},[63,3383,3384],{"class":65,"line":467},[63,3385,573],{"emptyLinePlaceholder":572},[63,3387,3388,3390,3392,3394,3396],{"class":65,"line":476},[63,3389,601],{"class":84},[63,3391,124],{"class":76},[63,3393,3273],{"class":127},[63,3395,131],{"class":76},[63,3397,134],{"class":84},[63,3399,3400,3402,3404,3406],{"class":65,"line":481},[63,3401,2384],{"class":80},[63,3403,3310],{"class":84},[63,3405,2863],{"class":80},[63,3407,628],{"class":84},[63,3409,3410,3412,3414,3416,3418,3420],{"class":65,"line":494},[63,3411,2384],{"class":80},[63,3413,3310],{"class":84},[63,3415,3313],{"class":80},[63,3417,3310],{"class":84},[63,3419,2863],{"class":80},[63,3421,628],{"class":84},[63,3423,3424],{"class":65,"line":499},[63,3425,3426],{"class":69},"    \u002F\u002F出现同名，子类会隐藏掉父类中所有同名成员函数，需要加作作用域访问\n",[63,3428,3429,3431,3433,3435,3437,3439,3441,3444],{"class":65,"line":508},[63,3430,2384],{"class":80},[63,3432,3310],{"class":84},[63,3434,3313],{"class":80},[63,3436,3310],{"class":84},[63,3438,2863],{"class":80},[63,3440,2639],{"class":84},[63,3442,3443],{"class":881},"100",[63,3445,2888],{"class":84},[63,3447,3448],{"class":65,"line":513},[63,3449,832],{"class":84},[63,3451,3452,3454,3456],{"class":65,"line":526},[63,3453,843],{"class":76},[63,3455,846],{"class":80},[63,3457,849],{"class":84},[63,3459,3460],{"class":65,"line":531},[63,3461,573],{"emptyLinePlaceholder":572},[63,3463,3464],{"class":65,"line":540},[63,3465,3466],{"class":69},"    \u002F\u002Ftest01();\n",[63,3468,3469,3472],{"class":65,"line":545},[63,3470,3471],{"class":80},"    test02",[63,3473,628],{"class":84},[63,3475,3476],{"class":65,"line":559},[63,3477,573],{"emptyLinePlaceholder":572},[63,3479,3480],{"class":65,"line":564},[63,3481,573],{"emptyLinePlaceholder":572},[63,3483,3484,3486,3488],{"class":65,"line":569},[63,3485,878],{"class":76},[63,3487,882],{"class":881},[63,3489,885],{"class":84},[63,3491,3492],{"class":65,"line":576},[63,3493,832],{"class":84},[15,3495,3496],{},[18,3497,895],{},[53,3499,3502],{"className":3500,"code":3501,"language":901,"meta":58},[899],"通过对象访问：\nSon - static void func()\nBase - static void func()\n通过类名访问：\nSon - static void func()\nBase - static void func()\nBase - static void func(int a)\n",[60,3503,3501],{"__ignoreMap":58},[2256,3505,3506],{},[15,3507,3508],{},"总结：同名静态成员处理方式和非静态处理方式一样，只不过有两种访问的方式（通过对象 和 通过类名）",[38,3510,3511],{"id":3511},"多继承语法",[15,3513,3514,3515],{},"C++允许",[18,3516,3517],{},"一个类继承多个类",[15,3519,3520,3521],{},"语法：",[60,3522,3523],{}," class 子类 ：继承方式 父类1 ， 继承方式 父类2...",[15,3525,3526],{},"多继承可能会引发父类中有同名成员出现，需要加作用域区分",[15,3528,3529],{},[18,3530,3531],{},"C++实际开发中不建议用多继承",[15,3533,3534],{},[18,3535,1533],{},[53,3537,3539],{"className":55,"code":3538,"language":57,"meta":58,"style":58},"class Base1 {\npublic:\n    Base1()\n    {\n        m_A = 100;\n    }\npublic:\n    int m_A;\n};\n\nclass Base2 {\npublic:\n    Base2()\n    {\n        m_A = 200;  \u002F\u002F开始是m_B 不会出问题，但是改为mA就会出现不明确\n    }\npublic:\n    int m_A;\n};\n\n\u002F\u002F语法：class 子类：继承方式 父类1 ，继承方式 父类2 \nclass Son : public Base2, public Base1 \n{\npublic:\n    Son()\n    {\n        m_C = 300;\n        m_D = 400;\n    }\npublic:\n    int m_C;\n    int m_D;\n};\n\n\u002F\u002F多继承容易产生成员同名的情况\n\u002F\u002F通过使用类名作用域可以区分调用哪一个基类的成员\nvoid test01()\n{\n    Son s;\n    cout \u003C\u003C \"sizeof Son = \" \u003C\u003C sizeof(s) \u003C\u003C endl;\n    cout \u003C\u003C s.Base1::m_A \u003C\u003C endl;\n    cout \u003C\u003C s.Base2::m_A \u003C\u003C endl;\n}\n\nint main() {\n\n    test01();\n\n\n    return 0;\n}\n",[60,3540,3541,3550,3554,3561,3565,3575,3579,3583,3589,3593,3597,3606,3610,3617,3621,3635,3639,3643,3649,3653,3657,3662,3683,3687,3691,3697,3701,3713,3725,3729,3733,3739,3745,3749,3753,3758,3763,3771,3775,3779,3798,3811,3824,3828,3832,3840,3844,3850,3854,3858,3866],{"__ignoreMap":58},[63,3542,3543,3545,3548],{"class":65,"line":66},[63,3544,77],{"class":76},[63,3546,3547],{"class":80}," Base1",[63,3549,2562],{"class":84},[63,3551,3552],{"class":65,"line":73},[63,3553,97],{"class":76},[63,3555,3556,3559],{"class":65,"line":88},[63,3557,3558],{"class":80},"    Base1",[63,3560,109],{"class":84},[63,3562,3563],{"class":65,"line":94},[63,3564,115],{"class":84},[63,3566,3567,3569,3571,3573],{"class":65,"line":100},[63,3568,2581],{"class":84},[63,3570,2584],{"class":76},[63,3572,2587],{"class":881},[63,3574,885],{"class":84},[63,3576,3577],{"class":65,"line":112},[63,3578,140],{"class":84},[63,3580,3581],{"class":65,"line":118},[63,3582,97],{"class":76},[63,3584,3585,3587],{"class":65,"line":137},[63,3586,1561],{"class":76},[63,3588,1564],{"class":84},[63,3590,3591],{"class":65,"line":143},[63,3592,248],{"class":84},[63,3594,3595],{"class":65,"line":153},[63,3596,573],{"emptyLinePlaceholder":572},[63,3598,3599,3601,3604],{"class":65,"line":158},[63,3600,77],{"class":76},[63,3602,3603],{"class":80}," Base2",[63,3605,2562],{"class":84},[63,3607,3608],{"class":65,"line":172},[63,3609,97],{"class":76},[63,3611,3612,3615],{"class":65,"line":177},[63,3613,3614],{"class":80},"    Base2",[63,3616,109],{"class":84},[63,3618,3619],{"class":65,"line":187},[63,3620,115],{"class":84},[63,3622,3623,3625,3627,3629,3632],{"class":65,"line":192},[63,3624,2581],{"class":84},[63,3626,2584],{"class":76},[63,3628,2728],{"class":881},[63,3630,3631],{"class":84},";",[63,3633,3634],{"class":69},"  \u002F\u002F开始是m_B 不会出问题，但是改为mA就会出现不明确\n",[63,3636,3637],{"class":65,"line":206},[63,3638,140],{"class":84},[63,3640,3641],{"class":65,"line":211},[63,3642,97],{"class":76},[63,3644,3645,3647],{"class":65,"line":221},[63,3646,1561],{"class":76},[63,3648,1564],{"class":84},[63,3650,3651],{"class":65,"line":226},[63,3652,248],{"class":84},[63,3654,3655],{"class":65,"line":240},[63,3656,573],{"emptyLinePlaceholder":572},[63,3658,3659],{"class":65,"line":245},[63,3660,3661],{"class":69},"\u002F\u002F语法：class 子类：继承方式 父类1 ，继承方式 父类2 \n",[63,3663,3664,3666,3668,3670,3672,3674,3677,3679,3681],{"class":65,"line":251},[63,3665,77],{"class":76},[63,3667,2111],{"class":80},[63,3669,1046],{"class":84},[63,3671,1049],{"class":76},[63,3673,3603],{"class":80},[63,3675,3676],{"class":84},", ",[63,3678,1049],{"class":76},[63,3680,3547],{"class":80},[63,3682,85],{"class":84},[63,3684,3685],{"class":65,"line":257},[63,3686,91],{"class":84},[63,3688,3689],{"class":65,"line":265},[63,3690,97],{"class":76},[63,3692,3693,3695],{"class":65,"line":270},[63,3694,2384],{"class":80},[63,3696,109],{"class":84},[63,3698,3699],{"class":65,"line":275},[63,3700,115],{"class":84},[63,3702,3703,3706,3708,3711],{"class":65,"line":284},[63,3704,3705],{"class":84},"        m_C ",[63,3707,2584],{"class":76},[63,3709,3710],{"class":881}," 300",[63,3712,885],{"class":84},[63,3714,3715,3718,3720,3723],{"class":65,"line":289},[63,3716,3717],{"class":84},"        m_D ",[63,3719,2584],{"class":76},[63,3721,3722],{"class":881}," 400",[63,3724,885],{"class":84},[63,3726,3727],{"class":65,"line":302},[63,3728,140],{"class":84},[63,3730,3731],{"class":65,"line":307},[63,3732,97],{"class":76},[63,3734,3735,3737],{"class":65,"line":316},[63,3736,1561],{"class":76},[63,3738,1588],{"class":84},[63,3740,3741,3743],{"class":65,"line":321},[63,3742,1561],{"class":76},[63,3744,2132],{"class":84},[63,3746,3747],{"class":65,"line":334},[63,3748,248],{"class":84},[63,3750,3751],{"class":65,"line":339},[63,3752,573],{"emptyLinePlaceholder":572},[63,3754,3755],{"class":65,"line":348},[63,3756,3757],{"class":69},"\u002F\u002F多继承容易产生成员同名的情况\n",[63,3759,3760],{"class":65,"line":353},[63,3761,3762],{"class":69},"\u002F\u002F通过使用类名作用域可以区分调用哪一个基类的成员\n",[63,3764,3765,3767,3769],{"class":65,"line":366},[63,3766,579],{"class":76},[63,3768,582],{"class":80},[63,3770,109],{"class":84},[63,3772,3773],{"class":65,"line":371},[63,3774,91],{"class":84},[63,3776,3777],{"class":65,"line":380},[63,3778,2469],{"class":84},[63,3780,3781,3783,3785,3787,3789,3791,3794,3796],{"class":65,"line":385},[63,3782,601],{"class":84},[63,3784,124],{"class":76},[63,3786,2161],{"class":127},[63,3788,131],{"class":76},[63,3790,2166],{"class":76},[63,3792,3793],{"class":84},"(s) ",[63,3795,124],{"class":76},[63,3797,134],{"class":84},[63,3799,3800,3802,3804,3807,3809],{"class":65,"line":399},[63,3801,601],{"class":84},[63,3803,124],{"class":76},[63,3805,3806],{"class":84}," s.Base1::m_A ",[63,3808,124],{"class":76},[63,3810,134],{"class":84},[63,3812,3813,3815,3817,3820,3822],{"class":65,"line":404},[63,3814,601],{"class":84},[63,3816,124],{"class":76},[63,3818,3819],{"class":84}," s.Base2::m_A ",[63,3821,124],{"class":76},[63,3823,134],{"class":84},[63,3825,3826],{"class":65,"line":409},[63,3827,832],{"class":84},[63,3829,3830],{"class":65,"line":415},[63,3831,573],{"emptyLinePlaceholder":572},[63,3833,3834,3836,3838],{"class":65,"line":425},[63,3835,843],{"class":76},[63,3837,846],{"class":80},[63,3839,849],{"class":84},[63,3841,3842],{"class":65,"line":430},[63,3843,573],{"emptyLinePlaceholder":572},[63,3845,3846,3848],{"class":65,"line":435},[63,3847,860],{"class":80},[63,3849,628],{"class":84},[63,3851,3852],{"class":65,"line":444},[63,3853,573],{"emptyLinePlaceholder":572},[63,3855,3856],{"class":65,"line":449},[63,3857,573],{"emptyLinePlaceholder":572},[63,3859,3860,3862,3864],{"class":65,"line":462},[63,3861,878],{"class":76},[63,3863,882],{"class":881},[63,3865,885],{"class":84},[63,3867,3868],{"class":65,"line":467},[63,3869,832],{"class":84},[15,3871,3872],{},[18,3873,2224],{},[53,3875,3878],{"className":3876,"code":3877,"language":901,"meta":58},[899],"sizeof Son = 16\n100\n200\n",[60,3879,3877],{"__ignoreMap":58},[2256,3881,3882],{},[15,3883,3884],{},"总结： 多继承中如果父类中出现了同名情况，子类使用时候要加作用域",[38,3886,3887],{"id":3887},"菱形继承",[15,3889,3890],{},[18,3891,3892],{},"菱形继承概念：",[15,3894,3895],{},"​\t两个派生类继承同一个基类",[15,3897,3898],{},"​\t又有某个类同时继承者两个派生类",[15,3900,3901],{},"​\t这种继承被称为菱形继承，或者钻石继承",[15,3903,3904],{},[18,3905,3906],{},"典型的菱形继承案例：",[15,3908,3909],{},[27,3910],{"alt":3911,"src":3912},"IMG_256","https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002Fstage3-clip-image002-6a3e181aea.webp",[15,3914,3915],{},[18,3916,3917],{},"菱形继承问题：",[2943,3919,3920,3928],{},[1515,3921,3922],{},[53,3923,3926],{"className":3924,"code":3925,"language":901},[899],"羊继承了动物的数据，驼同样继承了动物的数据，当草泥马使用数据时，就会产生二义性。\n",[60,3927,3925],{"__ignoreMap":58},[1515,3929,3930],{},"草泥马继承自动物的数据继承了两份，其实我们应该清楚，这份数据我们只需要一份就可以。",[15,3932,3933],{},[18,3934,1533],{},[53,3936,3938],{"className":55,"code":3937,"language":57,"meta":58,"style":58},"class Animal\n{\npublic:\n    int m_Age;\n};\n\n\u002F\u002F继承前加virtual关键字后，变为虚继承\n\u002F\u002F此时公共的父类Animal称为虚基类\nclass Sheep : virtual public Animal {};\nclass Tuo   : virtual public Animal {};\nclass SheepTuo : public Sheep, public Tuo {};\n\nvoid test01()\n{\n    SheepTuo st;\n    st.Sheep::m_Age = 100;\n    st.Tuo::m_Age = 200;\n\n    cout \u003C\u003C \"st.Sheep::m_Age = \" \u003C\u003C st.Sheep::m_Age \u003C\u003C endl;\n    cout \u003C\u003C \"st.Tuo::m_Age = \" \u003C\u003C  st.Tuo::m_Age \u003C\u003C endl;\n    cout \u003C\u003C \"st.m_Age = \" \u003C\u003C st.m_Age \u003C\u003C endl;\n}\n\nint main() {\n\n    test01();\n\n\n    return 0;\n}\n",[60,3939,3940,3947,3951,3955,3962,3966,3970,3975,3980,4001,4019,4040,4044,4052,4056,4061,4072,4083,4087,4105,4123,4141,4145,4149,4157,4161,4167,4171,4175,4183],{"__ignoreMap":58},[63,3941,3942,3944],{"class":65,"line":66},[63,3943,77],{"class":76},[63,3945,3946],{"class":80}," Animal\n",[63,3948,3949],{"class":65,"line":73},[63,3950,91],{"class":84},[63,3952,3953],{"class":65,"line":88},[63,3954,97],{"class":76},[63,3956,3957,3959],{"class":65,"line":94},[63,3958,1561],{"class":76},[63,3960,3961],{"class":84}," m_Age;\n",[63,3963,3964],{"class":65,"line":100},[63,3965,248],{"class":84},[63,3967,3968],{"class":65,"line":112},[63,3969,573],{"emptyLinePlaceholder":572},[63,3971,3972],{"class":65,"line":118},[63,3973,3974],{"class":69},"\u002F\u002F继承前加virtual关键字后，变为虚继承\n",[63,3976,3977],{"class":65,"line":137},[63,3978,3979],{"class":69},"\u002F\u002F此时公共的父类Animal称为虚基类\n",[63,3981,3982,3984,3987,3989,3992,3995,3998],{"class":65,"line":143},[63,3983,77],{"class":76},[63,3985,3986],{"class":80}," Sheep",[63,3988,1046],{"class":84},[63,3990,3991],{"class":76},"virtual",[63,3993,3994],{"class":76}," public",[63,3996,3997],{"class":80}," Animal",[63,3999,4000],{"class":84}," {};\n",[63,4002,4003,4005,4008,4011,4013,4015,4017],{"class":65,"line":153},[63,4004,77],{"class":76},[63,4006,4007],{"class":80}," Tuo",[63,4009,4010],{"class":84},"   : ",[63,4012,3991],{"class":76},[63,4014,3994],{"class":76},[63,4016,3997],{"class":80},[63,4018,4000],{"class":84},[63,4020,4021,4023,4026,4028,4030,4032,4034,4036,4038],{"class":65,"line":158},[63,4022,77],{"class":76},[63,4024,4025],{"class":80}," SheepTuo",[63,4027,1046],{"class":84},[63,4029,1049],{"class":76},[63,4031,3986],{"class":80},[63,4033,3676],{"class":84},[63,4035,1049],{"class":76},[63,4037,4007],{"class":80},[63,4039,4000],{"class":84},[63,4041,4042],{"class":65,"line":172},[63,4043,573],{"emptyLinePlaceholder":572},[63,4045,4046,4048,4050],{"class":65,"line":177},[63,4047,579],{"class":76},[63,4049,582],{"class":80},[63,4051,109],{"class":84},[63,4053,4054],{"class":65,"line":187},[63,4055,91],{"class":84},[63,4057,4058],{"class":65,"line":192},[63,4059,4060],{"class":84},"    SheepTuo st;\n",[63,4062,4063,4066,4068,4070],{"class":65,"line":206},[63,4064,4065],{"class":84},"    st.Sheep::m_Age ",[63,4067,2584],{"class":76},[63,4069,2587],{"class":881},[63,4071,885],{"class":84},[63,4073,4074,4077,4079,4081],{"class":65,"line":211},[63,4075,4076],{"class":84},"    st.Tuo::m_Age ",[63,4078,2584],{"class":76},[63,4080,2728],{"class":881},[63,4082,885],{"class":84},[63,4084,4085],{"class":65,"line":221},[63,4086,573],{"emptyLinePlaceholder":572},[63,4088,4089,4091,4093,4096,4098,4101,4103],{"class":65,"line":226},[63,4090,601],{"class":84},[63,4092,124],{"class":76},[63,4094,4095],{"class":127}," \"st.Sheep::m_Age = \"",[63,4097,131],{"class":76},[63,4099,4100],{"class":84}," st.Sheep::m_Age ",[63,4102,124],{"class":76},[63,4104,134],{"class":84},[63,4106,4107,4109,4111,4114,4116,4119,4121],{"class":65,"line":240},[63,4108,601],{"class":84},[63,4110,124],{"class":76},[63,4112,4113],{"class":127}," \"st.Tuo::m_Age = \"",[63,4115,131],{"class":76},[63,4117,4118],{"class":84},"  st.Tuo::m_Age ",[63,4120,124],{"class":76},[63,4122,134],{"class":84},[63,4124,4125,4127,4129,4132,4134,4137,4139],{"class":65,"line":245},[63,4126,601],{"class":84},[63,4128,124],{"class":76},[63,4130,4131],{"class":127}," \"st.m_Age = \"",[63,4133,131],{"class":76},[63,4135,4136],{"class":84}," st.m_Age ",[63,4138,124],{"class":76},[63,4140,134],{"class":84},[63,4142,4143],{"class":65,"line":251},[63,4144,832],{"class":84},[63,4146,4147],{"class":65,"line":257},[63,4148,573],{"emptyLinePlaceholder":572},[63,4150,4151,4153,4155],{"class":65,"line":265},[63,4152,843],{"class":76},[63,4154,846],{"class":80},[63,4156,849],{"class":84},[63,4158,4159],{"class":65,"line":270},[63,4160,573],{"emptyLinePlaceholder":572},[63,4162,4163,4165],{"class":65,"line":275},[63,4164,860],{"class":80},[63,4166,628],{"class":84},[63,4168,4169],{"class":65,"line":284},[63,4170,573],{"emptyLinePlaceholder":572},[63,4172,4173],{"class":65,"line":289},[63,4174,573],{"emptyLinePlaceholder":572},[63,4176,4177,4179,4181],{"class":65,"line":302},[63,4178,878],{"class":76},[63,4180,882],{"class":881},[63,4182,885],{"class":84},[63,4184,4185],{"class":65,"line":307},[63,4186,832],{"class":84},[15,4188,4189],{},[18,4190,895],{},[53,4192,4195],{"className":4193,"code":4194,"language":901,"meta":58},[899],"st.Sheep::m_Age = 200\nst.Tuo::m_Age = 200\nst.m_Age = 200\n",[60,4196,4194],{"__ignoreMap":58},[15,4198,1472],{},[1512,4200,4201,4204],{},[1515,4202,4203],{},"菱形继承带来的主要问题是子类继承两份相同的数据，导致资源浪费以及毫无意义",[1515,4205,4206],{},"利用虚继承可以解决菱形继承问题",[4208,4209,4210],"style",{},"html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":58,"searchDepth":73,"depth":73,"links":4212},[4213],{"id":5,"depth":88,"text":5},"1400-0500","2023-10-05","2023-10-05-cplusplus-jiao-xue","\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue","Cplusplus教学","md",false,{},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0500-ji-cheng",{"title":5,"description":58},"wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0500-继承","vL5aIUUdAHLUNHLKCvCive0YZLX547gsalHD3aSzmxc",[4227,4234,4240,4246,4252,4258,4264,4270,4276,4282,4288,4294,4300,4306,4312,4318,4324,4330,4336,4338,4344,4350,4356,4362,4368,4374,4380,4386,4392,4398,4404,4410,4416,4422,4428,4434,4440,4446,4452,4458,4464,4470,4476,4482,4488,4494,4500,4506,4512,4518,4524,4530,4536,4542,4548,4554,4560,4566,4572,4578,4584,4590,4596,4602,4608,4614,4620,4626,4632,4638,4644,4650,4656,4662,4668,4674,4680,4686,4692,4698,4704,4710,4716,4722,4728,4734,4740,4746,4752,4758,4764,4770],{"path":4228,"stem":4229,"title":4230,"authors":4231,"date":4215,"chapterOrder":4232,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0100-c-kai-fa-huan-jing-da-jian-yu-ce-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F0100-C++开发环境搭建与测试","C++开发环境搭建与测试",[7],"0100",0,{"path":4235,"stem":4236,"title":4237,"authors":4238,"date":4215,"chapterOrder":4239,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0200-c-ji-chu-chu-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F0200-C++基础初识","C++基础初识",[7],"0200",{"path":4241,"stem":4242,"title":4243,"authors":4244,"date":4215,"chapterOrder":4245,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0300-shu-ju-lei-xing-yu-shu-ju-cun-fang","wiki\u002F2023-10-05-Cplusplus教学\u002F0300-数据类型与数据存放","数据类型与数据存放",[7],"0300",{"path":4247,"stem":4248,"title":4249,"authors":4250,"date":4215,"chapterOrder":4251,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0400-shu-ru-shu-chu","wiki\u002F2023-10-05-Cplusplus教学\u002F0400-输入输出","输入输出",[7],"0400",{"path":4253,"stem":4254,"title":4255,"authors":4256,"date":4215,"chapterOrder":4257,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0500-yun-suan-fu","wiki\u002F2023-10-05-Cplusplus教学\u002F0500-运算符","运算符",[7],"0500",{"path":4259,"stem":4260,"title":4261,"authors":4262,"date":4215,"chapterOrder":4263,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0600-cheng-xu-liu-cheng-jie-gou","wiki\u002F2023-10-05-Cplusplus教学\u002F0600-程序流程结构","程序流程结构",[7],"0600",{"path":4265,"stem":4266,"title":4267,"authors":4268,"date":4215,"chapterOrder":4269,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0700-shu-zu","wiki\u002F2023-10-05-Cplusplus教学\u002F0700-数组","数组",[7],"0700",{"path":4271,"stem":4272,"title":4273,"authors":4274,"date":4215,"chapterOrder":4275,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0800-han-shu-yu-tou-wen-jian","wiki\u002F2023-10-05-Cplusplus教学\u002F0800-函数与头文件","函数与头文件",[7],"0800",{"path":4277,"stem":4278,"title":4279,"authors":4280,"date":4215,"chapterOrder":4281,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0900-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F0900-指针","指针",[7],"0900",{"path":4283,"stem":4284,"title":4285,"authors":4286,"date":4215,"chapterOrder":4287,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1000-jie-gou-ti-yu-gong-yong-ti","wiki\u002F2023-10-05-Cplusplus教学\u002F1000-结构体与共用体","结构体与共用体",[7],"1000",{"path":4289,"stem":4290,"title":4291,"authors":4292,"date":4215,"chapterOrder":4293,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1100-nei-cun-fen-qu-yu-sheng-ming-zhou-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1100-内存分区与生命周期","内存分区与生命周期",[7],"1100",{"path":4295,"stem":4296,"title":4297,"authors":4298,"date":4215,"chapterOrder":4299,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1200-yin-yong","wiki\u002F2023-10-05-Cplusplus教学\u002F1200-引用","引用",[7],"1200",{"path":4301,"stem":4302,"title":4303,"authors":4304,"date":4215,"chapterOrder":4305,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao","wiki\u002F2023-10-05-Cplusplus教学\u002F1300-函数提高","函数提高",[7],"1300",{"path":4307,"stem":4308,"title":4309,"authors":4310,"date":4215,"chapterOrder":4311,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1350-ming-ming-kong-jian","wiki\u002F2023-10-05-Cplusplus教学\u002F1350-命名空间","命名空间",[7],"1350",{"path":4313,"stem":4314,"title":4315,"authors":4316,"date":4215,"chapterOrder":4317,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0100-feng-zhuang","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0100-封装","封装",[7],"1400-0100",{"path":4319,"stem":4320,"title":4321,"authors":4322,"date":4215,"chapterOrder":4323,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0200-dui-xiang-chu-shi-hua-he-qing-li","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0200-对象初始化和清理","对象初始化和清理",[7],"1400-0200",{"path":4325,"stem":4326,"title":4327,"authors":4328,"date":4215,"chapterOrder":4329,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0300-dui-xiang-mo-xing-yu-this-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0300-对象模型与this指针","对象模型与this指针",[7],"1400-0300",{"path":4331,"stem":4332,"title":4333,"authors":4334,"date":4215,"chapterOrder":4335,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0400-you-yuan-yu-yun-suan-fu-zhong-zai","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0400-友元与运算符重载","友元与运算符重载",[7],"1400-0400",{"path":4222,"stem":4224,"title":5,"authors":4337,"date":4215,"chapterOrder":4214,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},[7],{"path":4339,"stem":4340,"title":4341,"authors":4342,"date":4215,"chapterOrder":4343,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0600-duo-tai","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0600-多态","多态",[7],"1400-0600",{"path":4345,"stem":4346,"title":4347,"authors":4348,"date":4215,"chapterOrder":4349,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-lei-he-dui-xiang","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-类和对象","类和对象",[7],"1400",{"path":4351,"stem":4352,"title":4353,"authors":4354,"date":4215,"chapterOrder":4355,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1450-han-shu-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F1450-函数指针","函数指针",[7],"1450",{"path":4357,"stem":4358,"title":4359,"authors":4360,"date":4215,"chapterOrder":4361,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1500-wen-jian-cao-zuo","wiki\u002F2023-10-05-Cplusplus教学\u002F1500-文件操作","文件操作",[7],"1500",{"path":4363,"stem":4364,"title":4365,"authors":4366,"date":4215,"chapterOrder":4367,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1600-yi-chang-chu-li-yu-cuo-wu-ma","wiki\u002F2023-10-05-Cplusplus教学\u002F1600-异常处理与错误码","异常处理",[7],"1600",{"path":4369,"stem":4370,"title":4371,"authors":4372,"date":4215,"chapterOrder":4373,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1700-mu-ban","wiki\u002F2023-10-05-Cplusplus教学\u002F1700-模板","模板",[7],"1700",{"path":4375,"stem":4376,"title":4377,"authors":4378,"date":4215,"chapterOrder":4379,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0100-stl-chu-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0100-STL初识","STL初识",[7],"1800-0100",{"path":4381,"stem":4382,"title":4383,"authors":4384,"date":4215,"chapterOrder":4385,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0200-std-array","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0200-std-array","std::array",[7],"1800-0200",{"path":4387,"stem":4388,"title":4389,"authors":4390,"date":4215,"chapterOrder":4391,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0300-string-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0300-string容器","string容器",[7],"1800-0300",{"path":4393,"stem":4394,"title":4395,"authors":4396,"date":4215,"chapterOrder":4397,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0400-vector-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0400-vector容器","vector 容器",[7],"1800-0400",{"path":4399,"stem":4400,"title":4401,"authors":4402,"date":4215,"chapterOrder":4403,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0500-deque-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0500-deque容器","deque 容器",[7],"1800-0500",{"path":4405,"stem":4406,"title":4407,"authors":4408,"date":4215,"chapterOrder":4409,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0600-stack-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0600-stack容器","stack 容器",[7],"1800-0600",{"path":4411,"stem":4412,"title":4413,"authors":4414,"date":4215,"chapterOrder":4415,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0700-queue-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0700-queue容器","queue 容器",[7],"1800-0700",{"path":4417,"stem":4418,"title":4419,"authors":4420,"date":4215,"chapterOrder":4421,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0800-list-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0800-list容器","list 容器",[7],"1800-0800",{"path":4423,"stem":4424,"title":4425,"authors":4426,"date":4215,"chapterOrder":4427,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0900-set-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0900-set容器","set \u002F multiset 容器",[7],"1800-0900",{"path":4429,"stem":4430,"title":4431,"authors":4432,"date":4215,"chapterOrder":4433,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-1000-map-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-1000-map容器","map \u002F multimap 容器",[7],"1800-1000",{"path":4435,"stem":4436,"title":4437,"authors":4438,"date":4215,"chapterOrder":4439,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-1100-han-shu-dui-xiang-yu-wei-ci","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-1100-函数对象与谓词","函数对象与谓词",[7],"1800-1100",{"path":4441,"stem":4442,"title":4443,"authors":4444,"date":4215,"chapterOrder":4445,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-1200-chang-yong-suan-fa","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-1200-常用算法","常用算法",[7],"1800-1200",{"path":4447,"stem":4448,"title":4449,"authors":4450,"date":4215,"chapterOrder":4451,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-stl-ti-gao-bian-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-STL提高编程","STL提高编程",[7],"1800",{"path":4453,"stem":4454,"title":4455,"authors":4456,"date":4215,"chapterOrder":4457,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1900-c-lei-xing-zhuan-huan","wiki\u002F2023-10-05-Cplusplus教学\u002F1900-C++类型转换","C++类型转换",[7],"1900",{"path":4459,"stem":4460,"title":4461,"authors":4462,"date":4215,"chapterOrder":4463,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0100-auto","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0100-auto","auto",[7],"2000-0100",{"path":4465,"stem":4466,"title":4467,"authors":4468,"date":4215,"chapterOrder":4469,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0200-nullptr","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0200-nullptr","nullptr",[7],"2000-0200",{"path":4471,"stem":4472,"title":4473,"authors":4474,"date":4215,"chapterOrder":4475,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0300-using","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0300-using","using",[7],"2000-0300",{"path":4477,"stem":4478,"title":4479,"authors":4480,"date":4215,"chapterOrder":4481,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0400-enum-class","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0400-enum-class","enum class",[7],"2000-0400",{"path":4483,"stem":4484,"title":4485,"authors":4486,"date":4215,"chapterOrder":4487,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0500-fan-wei-for-xun-huan","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0500-范围for循环","范围 for 循环",[7],"2000-0500",{"path":4489,"stem":4490,"title":4491,"authors":4492,"date":4215,"chapterOrder":4493,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0600-jie-gou-hua-bang-ding","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0600-结构化绑定","结构化绑定",[7],"2000-0600",{"path":4495,"stem":4496,"title":4497,"authors":4498,"date":4215,"chapterOrder":4499,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0700-constexpr","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0700-constexpr","constexpr",[7],"2000-0700",{"path":4501,"stem":4502,"title":4503,"authors":4504,"date":4215,"chapterOrder":4505,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0800-raii","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0800-RAII","RAII",[7],"2000-0800",{"path":4507,"stem":4508,"title":4509,"authors":4510,"date":4215,"chapterOrder":4511,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0900-zhi-neng-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0900-智能指针","智能指针",[7],"2000-0900",{"path":4513,"stem":4514,"title":4515,"authors":4516,"date":4215,"chapterOrder":4517,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1000-you-zhi-yin-yong-he-yi-dong-yu-yi","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1000-右值引用和移动语义","右值引用和移动语义",[7],"2000-1000",{"path":4519,"stem":4520,"title":4521,"authors":4522,"date":4215,"chapterOrder":4523,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1100-lambda-biao-da-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1100-Lambda表达式","Lambda 表达式",[7],"2000-1100",{"path":4525,"stem":4526,"title":4527,"authors":4528,"date":4215,"chapterOrder":4529,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1200-std-function","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1200-std-function","std::function",[7],"2000-1200",{"path":4531,"stem":4532,"title":4533,"authors":4534,"date":4215,"chapterOrder":4535,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1300-std-bind","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1300-std-bind","std::bind",[7],"2000-1300",{"path":4537,"stem":4538,"title":4539,"authors":4540,"date":4215,"chapterOrder":4541,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1400-std-optional","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1400-std-optional","std::optional",[7],"2000-1400",{"path":4543,"stem":4544,"title":4545,"authors":4546,"date":4215,"chapterOrder":4547,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1500-std-variant","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1500-std-variant","std::variant",[7],"2000-1500",{"path":4549,"stem":4550,"title":4551,"authors":4552,"date":4215,"chapterOrder":4553,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1600-std-span","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1600-std-span","std::span",[7],"2000-1600",{"path":4555,"stem":4556,"title":4557,"authors":4558,"date":4215,"chapterOrder":4559,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1700-std-format-print","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1700-std-format-print","std::format \u002F std::print",[7],"2000-1700",{"path":4561,"stem":4562,"title":4563,"authors":4564,"date":4215,"chapterOrder":4565,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1800-std-chrono","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1800-std-chrono","std::chrono",[7],"2000-1800",{"path":4567,"stem":4568,"title":4569,"authors":4570,"date":4215,"chapterOrder":4571,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0100-bing-fa-shi-shen-me","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0100-并发是什么","并发是什么",[7],"2000-1900-0100",{"path":4573,"stem":4574,"title":4575,"authors":4576,"date":4215,"chapterOrder":4577,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0200-bing-xing-shi-shen-me","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0200-并行是什么","并行是什么",[7],"2000-1900-0200",{"path":4579,"stem":4580,"title":4581,"authors":4582,"date":4215,"chapterOrder":4583,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0300-xie-cheng-shi-shen-me","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0300-协程是什么","协程是什么",[7],"2000-1900-0300",{"path":4585,"stem":4586,"title":4587,"authors":4588,"date":4215,"chapterOrder":4589,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-1000-bing-fa-bian-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-1000-并发编程","并发编程",[7],"2000-1900-1000",{"path":4591,"stem":4592,"title":4593,"authors":4594,"date":4215,"chapterOrder":4595,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-1100-std-thread","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-1100-std-thread","std::thread",[7],"2000-1900-1100",{"path":4597,"stem":4598,"title":4599,"authors":4600,"date":4215,"chapterOrder":4601,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-1200-mutex-lock-guard","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-1200-mutex-lock-guard","mutex 与 RAII 锁",[7],"2000-1900-1200",{"path":4603,"stem":4604,"title":4605,"authors":4606,"date":4215,"chapterOrder":4607,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-1300-std-atomic","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-1300-std-atomic","std::atomic",[7],"2000-1900-1300",{"path":4609,"stem":4610,"title":4611,"authors":4612,"date":4215,"chapterOrder":4613,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-1400-condition-variable","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-1400-condition-variable","condition_variable",[7],"2000-1900-1400",{"path":4615,"stem":4616,"title":4617,"authors":4618,"date":4215,"chapterOrder":4619,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-1500-future-async-promise","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-1500-future-async-promise","future、async、promise 与 packaged_task",[7],"2000-1900-1500",{"path":4621,"stem":4622,"title":4623,"authors":4624,"date":4215,"chapterOrder":4625,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-1600-jthread-stop-token","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-1600-jthread-stop-token","jthread 与 stop_token",[7],"2000-1900-1600",{"path":4627,"stem":4628,"title":4629,"authors":4630,"date":4215,"chapterOrder":4631,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-1700-semaphore-latch-barrier","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-1700-semaphore-latch-barrier","semaphore、latch 与 barrier",[7],"2000-1900-1700",{"path":4633,"stem":4634,"title":4635,"authors":4636,"date":4215,"chapterOrder":4637,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-bing-fa-bing-xing-yu-xie-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-并发并行与协程","并发、并行与协程",[7],"2000-1900",{"path":4639,"stem":4640,"title":4641,"authors":4642,"date":4215,"chapterOrder":4643,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-2000-std-filesystem","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-2000-std-filesystem","std::filesystem",[7],"2000-2000",{"path":4645,"stem":4646,"title":4647,"authors":4648,"date":4215,"chapterOrder":4649,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-2100-modules-jian-jie","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-2100-modules简介","modules 简介",[7],"2000-2100",{"path":4651,"stem":4652,"title":4653,"authors":4654,"date":4215,"chapterOrder":4655,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-xian-dai-c","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-现代C++","现代C++",[7],"2000",{"path":4657,"stem":4658,"title":4659,"authors":4660,"date":4215,"chapterOrder":4661,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0100-ding-shi-qi-yu-yi-bu-io","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0100-定时器与异步IO","定时器与异步 IO",[7],"2100-0100-0100",{"path":4663,"stem":4664,"title":4665,"authors":4666,"date":4215,"chapterOrder":4667,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0200-boost-asio-ji-chu","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0200-Boost.Asio基础","Boost.Asio 基础",[7],"2100-0100-0200",{"path":4669,"stem":4670,"title":4671,"authors":4672,"date":4215,"chapterOrder":4673,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0300-chuan-kou-tong-xin","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0300-串口通信","串口通信教学",[7],"2100-0100-0300",{"path":4675,"stem":4676,"title":4677,"authors":4678,"date":4215,"chapterOrder":4679,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0350-chuan-kou-tong-xin-chuan-kou-bao-xie-yi-shi-li","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0350-串口通信串口包协议实例","串口通信串口包协议实例",[7],"2100-0100-0350",{"path":4681,"stem":4682,"title":4683,"authors":4684,"date":4215,"chapterOrder":4685,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0400-tcp-tong-xin","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0400-TCP通信","TCP 通信",[7],"2100-0100-0400",{"path":4687,"stem":4688,"title":4689,"authors":4690,"date":4215,"chapterOrder":4691,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0500-udp-tong-xin","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0500-UDP通信","UDP 通信",[7],"2100-0100-0500",{"path":4693,"stem":4694,"title":4695,"authors":4696,"date":4215,"chapterOrder":4697,"chapterDepth":73,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0600-ji-qi-ren-gong-cheng-xie-fa-yu-ros2-ji-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0600-机器人工程写法与ROS2集成","机器人工程写法与 ROS2 集成",[7],"2100-0100-0600",{"path":4699,"stem":4700,"title":4701,"authors":4702,"date":4215,"chapterOrder":4703,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-boost-asio-yi-bu-io-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-Boost.Asio异步IO库","Boost.Asio异步IO库",[7],"2100-0100",{"path":4705,"stem":4706,"title":4707,"authors":4708,"date":4215,"chapterOrder":4709,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0200-eigen-xian-xing-dai-shu-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0200-Eigen线性代数库","Eigen线性代数库",[7],"2100-0200",{"path":4711,"stem":4712,"title":4713,"authors":4714,"date":4215,"chapterOrder":4715,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0300-opencv-ji-suan-ji-shi-jue-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0300-OpenCV计算机视觉库","OpenCV计算机视觉库",[7],"2100-0300",{"path":4717,"stem":4718,"title":4719,"authors":4720,"date":4215,"chapterOrder":4721,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0400-pcl-dian-yun-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0400-PCL点云库","PCL点云库",[7],"2100-0400",{"path":4723,"stem":4724,"title":4725,"authors":4726,"date":4215,"chapterOrder":4727,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0500-sophus-li-qun-li-dai-shu-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0500-Sophus李群李代数库","Sophus 李群李代数库",[7],"2100-0500",{"path":4729,"stem":4730,"title":4731,"authors":4732,"date":4215,"chapterOrder":4733,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-chang-yong-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-常用库","常用库学习",[7],"2100",{"path":4735,"stem":4736,"title":4737,"authors":4738,"date":4215,"chapterOrder":4739,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0100-cmakepresets-yu-gou-jian-an-zhuang","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-0100-CMakePresets与构建安装","CMakePresets与构建安装",[7],"2200-0100",{"path":4741,"stem":4742,"title":4743,"authors":4744,"date":4215,"chapterOrder":4745,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0200-ding-ceng-cmake-yu-gong-gong-bian-yi-xuan-xiang","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-0200-顶层CMake与公共编译选项","顶层CMake与公共编译选项",[7],"2200-0200",{"path":4747,"stem":4748,"title":4749,"authors":4750,"date":4215,"chapterOrder":4751,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0300-src-yu-lib-mo-kuai-cmake-xiang-jie","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-0300-src与lib模块CMake详解","src与lib模块CMake详解",[7],"2200-0300",{"path":4753,"stem":4754,"title":4755,"authors":4756,"date":4215,"chapterOrder":4757,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0400-di-san-fang-ku-yi-lai-xie-fa","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-0400-第三方库依赖写法","第三方库依赖写法",[7],"2200-0400",{"path":4759,"stem":4760,"title":4761,"authors":4762,"date":4215,"chapterOrder":4763,"chapterDepth":66,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0500-mu-ban-kuo-zhan-yu-chang-jian-wen-ti","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-0500-模板扩展与常见问题","模板扩展与常见问题",[7],"2200-0500",{"path":4765,"stem":4766,"title":4767,"authors":4768,"date":4215,"chapterOrder":4769,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":4220},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-cmake-gong-cheng-mu-ban","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-CMake工程模板","CMake工程模板",[7],"2200",{"path":4217,"stem":4771,"title":4772,"authors":4773,"date":4215,"chapterOrder":4774,"chapterDepth":4233,"docKey":4216,"docRoot":4217,"docTitle":4218,"isWikiDoc":572,"isWikiIndex":572},"wiki\u002F2023-10-05-Cplusplus教学\u002Findex","C\u002FC++教程",[7],null,[4776,4778,4781,4784],{"name":7,"image":4777},"\u002Fimages\u002Fmember_photo\u002F董佳辉.jpg",{"name":4779,"image":4780},"宫金良","\u002Fimages\u002Fmember_photo\u002F宫金良.jpg",{"name":4782,"image":4783},"巩丽","\u002Fimages\u002Fmember_photo\u002F巩丽.png",{"name":4785,"image":4786},"张彦斐","\u002Fimages\u002Fmember_photo\u002F张彦斐.jpg",1792431896789]