[{"data":1,"prerenderedAt":2133},["ShallowReactive",2],{"wiki-page-\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian":3,"wiki-doc-items-\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian":1713,"language-switcher-data-\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian":2117,"wiki-i18n-paths-\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian":2132},{"id":4,"title":5,"body":6,"canonicalPath":1694,"chapterDepth":1695,"chapterOrder":1696,"date":1697,"description":42,"docI18nKey":1698,"docKey":1699,"docRoot":1700,"docTitle":1701,"extension":1702,"i18nKey":1703,"isBlogPost":1704,"isWikiDoc":128,"isWikiIndex":1704,"layout":1705,"legacyPath":1705,"locale":1706,"localeSlug":1707,"meta":1708,"navigation":128,"path":1694,"seo":1709,"sourcePath":1710,"sourceStem":1703,"stem":1711,"wikiDepth":49,"__hash__":1712},"content\u002F_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1300-函数提高与命名空间.md","Advanced Functions and Namespaces",{"type":7,"value":8,"toc":1682},"minimark",[9,14,19,23,30,36,318,323,331,335,338,347,350,354,457,461,467,471,476,482,487,510,516,520,859,863,869,873,881,885,1170,1174,1180,1184,1187,1194,1198,1204,1228,1237,1240,1256,1262,1266,1273,1553,1568,1572,1575,1616,1622,1628,1672,1678],[10,11,13],"h2",{"id":12},"function-optimization","Function Optimization",[15,16,18],"h3",{"id":17},"default-function-parameters","default function parameters",[20,21,22],"p",{},"In C++, the parameters in a function's parameter list can have default values.",[20,24,25,26],{},"Grammar: ",[27,28,29],"code",{}," 返回值类型  函数名 （参数= 默认值）{}",[20,31,32],{},[33,34,35],"strong",{},"Example:",[37,38,43],"pre",{"className":39,"code":40,"language":41,"meta":42,"style":42},"language-cpp shiki shiki-themes github-light github-dark","int func(int a, int b = 10, int c = 10) {\n    return a + b + c;\n}\n\n\u002F\u002F1. 如果某个位置参数有默认值，那么从这个位置往后，从左向右，必须都要有默认值\n\u002F\u002F2. 如果函数声明有默认值，函数实现的时候就不能有默认参数\nint func2(int a = 10, int b = 10);\nint func2(int a, int b) {\n    return a + b;\n}\n\nint main() {\n\n    cout \u003C\u003C \"ret = \" \u003C\u003C func(20, 20) \u003C\u003C endl;\n    cout \u003C\u003C \"ret = \" \u003C\u003C func(100) \u003C\u003C endl;\n\n\n    return 0;\n}\n","cpp","",[27,44,45,97,117,123,130,137,143,174,195,207,212,217,228,233,268,292,297,302,313],{"__ignoreMap":42},[46,47,50,54,58,62,64,68,71,73,76,79,83,85,87,90,92,94],"span",{"class":48,"line":49},"line",1,[46,51,53],{"class":52},"szBVR","int",[46,55,57],{"class":56},"sScJk"," func",[46,59,61],{"class":60},"sVt8B","(",[46,63,53],{"class":52},[46,65,67],{"class":66},"s4XuR"," a",[46,69,70],{"class":60},", ",[46,72,53],{"class":52},[46,74,75],{"class":66}," b",[46,77,78],{"class":52}," =",[46,80,82],{"class":81},"sj4cs"," 10",[46,84,70],{"class":60},[46,86,53],{"class":52},[46,88,89],{"class":66}," c",[46,91,78],{"class":52},[46,93,82],{"class":81},[46,95,96],{"class":60},") {\n",[46,98,100,103,106,109,112,114],{"class":48,"line":99},2,[46,101,102],{"class":52},"    return",[46,104,105],{"class":60}," a ",[46,107,108],{"class":52},"+",[46,110,111],{"class":60}," b ",[46,113,108],{"class":52},[46,115,116],{"class":60}," c;\n",[46,118,120],{"class":48,"line":119},3,[46,121,122],{"class":60},"}\n",[46,124,126],{"class":48,"line":125},4,[46,127,129],{"emptyLinePlaceholder":128},true,"\n",[46,131,133],{"class":48,"line":132},5,[46,134,136],{"class":135},"sJ8bj","\u002F\u002F1. 如果某个位置参数有默认值，那么从这个位置往后，从左向右，必须都要有默认值\n",[46,138,140],{"class":48,"line":139},6,[46,141,142],{"class":135},"\u002F\u002F2. 如果函数声明有默认值，函数实现的时候就不能有默认参数\n",[46,144,146,148,151,153,155,157,159,161,163,165,167,169,171],{"class":48,"line":145},7,[46,147,53],{"class":52},[46,149,150],{"class":56}," func2",[46,152,61],{"class":60},[46,154,53],{"class":52},[46,156,67],{"class":66},[46,158,78],{"class":52},[46,160,82],{"class":81},[46,162,70],{"class":60},[46,164,53],{"class":52},[46,166,75],{"class":66},[46,168,78],{"class":52},[46,170,82],{"class":81},[46,172,173],{"class":60},");\n",[46,175,177,179,181,183,185,187,189,191,193],{"class":48,"line":176},8,[46,178,53],{"class":52},[46,180,150],{"class":56},[46,182,61],{"class":60},[46,184,53],{"class":52},[46,186,67],{"class":66},[46,188,70],{"class":60},[46,190,53],{"class":52},[46,192,75],{"class":66},[46,194,96],{"class":60},[46,196,198,200,202,204],{"class":48,"line":197},9,[46,199,102],{"class":52},[46,201,105],{"class":60},[46,203,108],{"class":52},[46,205,206],{"class":60}," b;\n",[46,208,210],{"class":48,"line":209},10,[46,211,122],{"class":60},[46,213,215],{"class":48,"line":214},11,[46,216,129],{"emptyLinePlaceholder":128},[46,218,220,222,225],{"class":48,"line":219},12,[46,221,53],{"class":52},[46,223,224],{"class":56}," main",[46,226,227],{"class":60},"() {\n",[46,229,231],{"class":48,"line":230},13,[46,232,129],{"emptyLinePlaceholder":128},[46,234,236,239,242,246,249,251,253,256,258,260,263,265],{"class":48,"line":235},14,[46,237,238],{"class":60},"    cout ",[46,240,241],{"class":52},"\u003C\u003C",[46,243,245],{"class":244},"sZZnC"," \"ret = \"",[46,247,248],{"class":52}," \u003C\u003C",[46,250,57],{"class":56},[46,252,61],{"class":60},[46,254,255],{"class":81},"20",[46,257,70],{"class":60},[46,259,255],{"class":81},[46,261,262],{"class":60},") ",[46,264,241],{"class":52},[46,266,267],{"class":60}," endl;\n",[46,269,271,273,275,277,279,281,283,286,288,290],{"class":48,"line":270},15,[46,272,238],{"class":60},[46,274,241],{"class":52},[46,276,245],{"class":244},[46,278,248],{"class":52},[46,280,57],{"class":56},[46,282,61],{"class":60},[46,284,285],{"class":81},"100",[46,287,262],{"class":60},[46,289,241],{"class":52},[46,291,267],{"class":60},[46,293,295],{"class":48,"line":294},16,[46,296,129],{"emptyLinePlaceholder":128},[46,298,300],{"class":48,"line":299},17,[46,301,129],{"emptyLinePlaceholder":128},[46,303,305,307,310],{"class":48,"line":304},18,[46,306,102],{"class":52},[46,308,309],{"class":81}," 0",[46,311,312],{"class":60},";\n",[46,314,316],{"class":48,"line":315},19,[46,317,122],{"class":60},[20,319,320],{},[33,321,322],{},"运行结果：",[37,324,329],{"className":325,"code":327,"language":328,"meta":42},[326],"language-text","ret = 50\nret = 120\n","text",[27,330,327],{"__ignoreMap":42},[15,332,334],{"id":333},"function-placeholder-parameters","Function Placeholder Parameters",[20,336,337],{},"In C++, function parameter lists can have placeholder parameters used as placeholders, and when calling the function, that position must be filled.",[20,339,340,343,344],{},[33,341,342],{},"Syntax:"," ",[27,345,346],{},"返回值类型 函数名 (数据类型){}",[20,348,349],{},"At this stage, the placeholder parameters in functions have little significance, but this technique will be used in later lessons.",[20,351,352],{},[33,353,35],{},[37,355,357],{"className":39,"code":356,"language":41,"meta":42,"style":42},"\u002F\u002F函数占位参数 ，占位参数也可以有默认参数\nvoid func(int a, int) {\n    cout \u003C\u003C \"this is func\" \u003C\u003C endl;\n}\n\nint main() {\n\n    func(10,10); \u002F\u002F占位参数必须填补\n\n\n    return 0;\n}\n",[27,358,359,364,383,396,400,404,412,416,437,441,445,453],{"__ignoreMap":42},[46,360,361],{"class":48,"line":49},[46,362,363],{"class":135},"\u002F\u002F函数占位参数 ，占位参数也可以有默认参数\n",[46,365,366,369,371,373,375,377,379,381],{"class":48,"line":99},[46,367,368],{"class":52},"void",[46,370,57],{"class":56},[46,372,61],{"class":60},[46,374,53],{"class":52},[46,376,67],{"class":66},[46,378,70],{"class":60},[46,380,53],{"class":52},[46,382,96],{"class":60},[46,384,385,387,389,392,394],{"class":48,"line":119},[46,386,238],{"class":60},[46,388,241],{"class":52},[46,390,391],{"class":244}," \"this is func\"",[46,393,248],{"class":52},[46,395,267],{"class":60},[46,397,398],{"class":48,"line":125},[46,399,122],{"class":60},[46,401,402],{"class":48,"line":132},[46,403,129],{"emptyLinePlaceholder":128},[46,405,406,408,410],{"class":48,"line":139},[46,407,53],{"class":52},[46,409,224],{"class":56},[46,411,227],{"class":60},[46,413,414],{"class":48,"line":145},[46,415,129],{"emptyLinePlaceholder":128},[46,417,418,421,423,426,429,431,434],{"class":48,"line":176},[46,419,420],{"class":56},"    func",[46,422,61],{"class":60},[46,424,425],{"class":81},"10",[46,427,428],{"class":60},",",[46,430,425],{"class":81},[46,432,433],{"class":60},");",[46,435,436],{"class":135}," \u002F\u002F占位参数必须填补\n",[46,438,439],{"class":48,"line":197},[46,440,129],{"emptyLinePlaceholder":128},[46,442,443],{"class":48,"line":209},[46,444,129],{"emptyLinePlaceholder":128},[46,446,447,449,451],{"class":48,"line":214},[46,448,102],{"class":52},[46,450,309],{"class":81},[46,452,312],{"class":60},[46,454,455],{"class":48,"line":219},[46,456,122],{"class":60},[20,458,459],{},[33,460,322],{},[37,462,465],{"className":463,"code":464,"language":328,"meta":42},[326],"this is func\n",[27,466,464],{"__ignoreMap":42},[15,468,470],{"id":469},"function-overloading","function overloading",[472,473,475],"h4",{"id":474},"function-overloading-overview","Function Overloading Overview",[20,477,478,481],{},[33,479,480],{},"Purpose:"," Functions can share the same name, improving reusability",[20,483,484],{},[33,485,486],{},"Function overloading satisfies the conditions:",[488,489,490,494,497],"ul",{},[491,492,493],"li",{},"Under the same scope",[491,495,496],{},"Function names are the same",[491,498,499,502,503,506,507],{},[33,500,501],{},"Different types"," of function parameters, or ",[33,504,505],{},"different counts",", or ",[33,508,509],{},"different orders",[20,511,512,515],{},[33,513,514],{},"Note:"," Return values cannot be used as conditions for function overloading.",[20,517,518],{},[33,519,35],{},[37,521,523],{"className":39,"code":522,"language":41,"meta":42,"style":42},"\u002F\u002F函数重载需要函数都在同一个作用域下\nvoid func()\n{\n    cout \u003C\u003C \"func 的调用！\" \u003C\u003C endl;\n}\nvoid func(int a)\n{\n    cout \u003C\u003C \"func (int a) 的调用！\" \u003C\u003C endl;\n}\nvoid func(double a)\n{\n    cout \u003C\u003C \"func (double a)的调用！\" \u003C\u003C endl;\n}\nvoid func(int a ,double b)\n{\n    cout \u003C\u003C \"func (int a ,double b) 的调用！\" \u003C\u003C endl;\n}\nvoid func(double a ,int b)\n{\n    cout \u003C\u003C \"func (double a ,int b)的调用！\" \u003C\u003C endl;\n}\n\n\u002F\u002F函数返回值不可以作为函数重载条件\n\u002F\u002Fint func(double a, int b)\n\u002F\u002F{\n\u002F\u002F  cout \u003C\u003C \"func (double a ,int b)的调用！\" \u003C\u003C endl;\n\u002F\u002F}\n\nint main() {\n\n    func();\n    func(10);\n    func(3.14);\n    func(10,3.14);\n    func(3.14 , 10);\n    \n\n    return 0;\n}\n",[27,524,525,530,539,544,557,561,576,580,593,597,612,616,629,633,654,658,671,675,695,699,713,718,723,729,735,741,747,753,758,767,772,780,791,803,818,834,840,845,854],{"__ignoreMap":42},[46,526,527],{"class":48,"line":49},[46,528,529],{"class":135},"\u002F\u002F函数重载需要函数都在同一个作用域下\n",[46,531,532,534,536],{"class":48,"line":99},[46,533,368],{"class":52},[46,535,57],{"class":56},[46,537,538],{"class":60},"()\n",[46,540,541],{"class":48,"line":119},[46,542,543],{"class":60},"{\n",[46,545,546,548,550,553,555],{"class":48,"line":125},[46,547,238],{"class":60},[46,549,241],{"class":52},[46,551,552],{"class":244}," \"func 的调用！\"",[46,554,248],{"class":52},[46,556,267],{"class":60},[46,558,559],{"class":48,"line":132},[46,560,122],{"class":60},[46,562,563,565,567,569,571,573],{"class":48,"line":139},[46,564,368],{"class":52},[46,566,57],{"class":56},[46,568,61],{"class":60},[46,570,53],{"class":52},[46,572,67],{"class":66},[46,574,575],{"class":60},")\n",[46,577,578],{"class":48,"line":145},[46,579,543],{"class":60},[46,581,582,584,586,589,591],{"class":48,"line":176},[46,583,238],{"class":60},[46,585,241],{"class":52},[46,587,588],{"class":244}," \"func (int a) 的调用！\"",[46,590,248],{"class":52},[46,592,267],{"class":60},[46,594,595],{"class":48,"line":197},[46,596,122],{"class":60},[46,598,599,601,603,605,608,610],{"class":48,"line":209},[46,600,368],{"class":52},[46,602,57],{"class":56},[46,604,61],{"class":60},[46,606,607],{"class":52},"double",[46,609,67],{"class":66},[46,611,575],{"class":60},[46,613,614],{"class":48,"line":214},[46,615,543],{"class":60},[46,617,618,620,622,625,627],{"class":48,"line":219},[46,619,238],{"class":60},[46,621,241],{"class":52},[46,623,624],{"class":244}," \"func (double a)的调用！\"",[46,626,248],{"class":52},[46,628,267],{"class":60},[46,630,631],{"class":48,"line":230},[46,632,122],{"class":60},[46,634,635,637,639,641,643,645,648,650,652],{"class":48,"line":235},[46,636,368],{"class":52},[46,638,57],{"class":56},[46,640,61],{"class":60},[46,642,53],{"class":52},[46,644,67],{"class":66},[46,646,647],{"class":60}," ,",[46,649,607],{"class":52},[46,651,75],{"class":66},[46,653,575],{"class":60},[46,655,656],{"class":48,"line":270},[46,657,543],{"class":60},[46,659,660,662,664,667,669],{"class":48,"line":294},[46,661,238],{"class":60},[46,663,241],{"class":52},[46,665,666],{"class":244}," \"func (int a ,double b) 的调用！\"",[46,668,248],{"class":52},[46,670,267],{"class":60},[46,672,673],{"class":48,"line":299},[46,674,122],{"class":60},[46,676,677,679,681,683,685,687,689,691,693],{"class":48,"line":304},[46,678,368],{"class":52},[46,680,57],{"class":56},[46,682,61],{"class":60},[46,684,607],{"class":52},[46,686,67],{"class":66},[46,688,647],{"class":60},[46,690,53],{"class":52},[46,692,75],{"class":66},[46,694,575],{"class":60},[46,696,697],{"class":48,"line":315},[46,698,543],{"class":60},[46,700,702,704,706,709,711],{"class":48,"line":701},20,[46,703,238],{"class":60},[46,705,241],{"class":52},[46,707,708],{"class":244}," \"func (double a ,int b)的调用！\"",[46,710,248],{"class":52},[46,712,267],{"class":60},[46,714,716],{"class":48,"line":715},21,[46,717,122],{"class":60},[46,719,721],{"class":48,"line":720},22,[46,722,129],{"emptyLinePlaceholder":128},[46,724,726],{"class":48,"line":725},23,[46,727,728],{"class":135},"\u002F\u002F函数返回值不可以作为函数重载条件\n",[46,730,732],{"class":48,"line":731},24,[46,733,734],{"class":135},"\u002F\u002Fint func(double a, int b)\n",[46,736,738],{"class":48,"line":737},25,[46,739,740],{"class":135},"\u002F\u002F{\n",[46,742,744],{"class":48,"line":743},26,[46,745,746],{"class":135},"\u002F\u002F  cout \u003C\u003C \"func (double a ,int b)的调用！\" \u003C\u003C endl;\n",[46,748,750],{"class":48,"line":749},27,[46,751,752],{"class":135},"\u002F\u002F}\n",[46,754,756],{"class":48,"line":755},28,[46,757,129],{"emptyLinePlaceholder":128},[46,759,761,763,765],{"class":48,"line":760},29,[46,762,53],{"class":52},[46,764,224],{"class":56},[46,766,227],{"class":60},[46,768,770],{"class":48,"line":769},30,[46,771,129],{"emptyLinePlaceholder":128},[46,773,775,777],{"class":48,"line":774},31,[46,776,420],{"class":56},[46,778,779],{"class":60},"();\n",[46,781,783,785,787,789],{"class":48,"line":782},32,[46,784,420],{"class":56},[46,786,61],{"class":60},[46,788,425],{"class":81},[46,790,173],{"class":60},[46,792,794,796,798,801],{"class":48,"line":793},33,[46,795,420],{"class":56},[46,797,61],{"class":60},[46,799,800],{"class":81},"3.14",[46,802,173],{"class":60},[46,804,806,808,810,812,814,816],{"class":48,"line":805},34,[46,807,420],{"class":56},[46,809,61],{"class":60},[46,811,425],{"class":81},[46,813,428],{"class":60},[46,815,800],{"class":81},[46,817,173],{"class":60},[46,819,821,823,825,827,830,832],{"class":48,"line":820},35,[46,822,420],{"class":56},[46,824,61],{"class":60},[46,826,800],{"class":81},[46,828,829],{"class":60}," , ",[46,831,425],{"class":81},[46,833,173],{"class":60},[46,835,837],{"class":48,"line":836},36,[46,838,839],{"class":60},"    \n",[46,841,843],{"class":48,"line":842},37,[46,844,129],{"emptyLinePlaceholder":128},[46,846,848,850,852],{"class":48,"line":847},38,[46,849,102],{"class":52},[46,851,309],{"class":81},[46,853,312],{"class":60},[46,855,857],{"class":48,"line":856},39,[46,858,122],{"class":60},[20,860,861],{},[33,862,322],{},[37,864,867],{"className":865,"code":866,"language":328,"meta":42},[326],"func 的调用！\nfunc (int a) 的调用！\nfunc (double a)的调用！\nfunc (int a ,double b) 的调用！\nfunc (double a ,int b)的调用！\n",[27,868,866],{"__ignoreMap":42},[472,870,872],{"id":871},"function-overloading-considerations","Function Overloading Considerations",[488,874,875,878],{},[491,876,877],{},"References as Overload Conditions",[491,879,880],{},"Function Overloading with Function Default Parameters",[20,882,883],{},[33,884,35],{},[37,886,888],{"className":39,"code":887,"language":41,"meta":42,"style":42},"\u002F\u002F函数重载注意事项\n\u002F\u002F1、引用作为重载条件\n\nvoid func(int &a)\n{\n    cout \u003C\u003C \"func (int &a) 调用 \" \u003C\u003C endl;\n}\n\nvoid func(const int &a)\n{\n    cout \u003C\u003C \"func (const int &a) 调用 \" \u003C\u003C endl;\n}\n\n\u002F\u002F2、函数重载碰到函数默认参数\n\nvoid func2(int a, int b = 10)\n{\n    cout \u003C\u003C \"func2(int a, int b = 10) 调用\" \u003C\u003C endl;\n}\n\nvoid func2(int a)\n{\n    cout \u003C\u003C \"func2(int a) 调用\" \u003C\u003C endl;\n}\n\nint main() {\n    \n    int a = 10;\n    func(a); \u002F\u002F调用无const\n    func(10);\u002F\u002F调用有const\n\n    \u002F\u002Ffunc2(10); \u002F\u002F碰到默认参数产生歧义，需要避免\n\n\n    return 0;\n}\n",[27,889,890,895,900,904,922,926,939,943,947,967,971,984,988,992,997,1001,1025,1029,1042,1046,1050,1064,1068,1081,1085,1089,1097,1101,1115,1125,1138,1142,1150,1154,1158,1166],{"__ignoreMap":42},[46,891,892],{"class":48,"line":49},[46,893,894],{"class":135},"\u002F\u002F函数重载注意事项\n",[46,896,897],{"class":48,"line":99},[46,898,899],{"class":135},"\u002F\u002F1、引用作为重载条件\n",[46,901,902],{"class":48,"line":119},[46,903,129],{"emptyLinePlaceholder":128},[46,905,906,908,910,912,914,917,920],{"class":48,"line":125},[46,907,368],{"class":52},[46,909,57],{"class":56},[46,911,61],{"class":60},[46,913,53],{"class":52},[46,915,916],{"class":52}," &",[46,918,919],{"class":66},"a",[46,921,575],{"class":60},[46,923,924],{"class":48,"line":132},[46,925,543],{"class":60},[46,927,928,930,932,935,937],{"class":48,"line":139},[46,929,238],{"class":60},[46,931,241],{"class":52},[46,933,934],{"class":244}," \"func (int &a) 调用 \"",[46,936,248],{"class":52},[46,938,267],{"class":60},[46,940,941],{"class":48,"line":145},[46,942,122],{"class":60},[46,944,945],{"class":48,"line":176},[46,946,129],{"emptyLinePlaceholder":128},[46,948,949,951,953,955,958,961,963,965],{"class":48,"line":197},[46,950,368],{"class":52},[46,952,57],{"class":56},[46,954,61],{"class":60},[46,956,957],{"class":52},"const",[46,959,960],{"class":52}," int",[46,962,916],{"class":52},[46,964,919],{"class":66},[46,966,575],{"class":60},[46,968,969],{"class":48,"line":209},[46,970,543],{"class":60},[46,972,973,975,977,980,982],{"class":48,"line":214},[46,974,238],{"class":60},[46,976,241],{"class":52},[46,978,979],{"class":244}," \"func (const int &a) 调用 \"",[46,981,248],{"class":52},[46,983,267],{"class":60},[46,985,986],{"class":48,"line":219},[46,987,122],{"class":60},[46,989,990],{"class":48,"line":230},[46,991,129],{"emptyLinePlaceholder":128},[46,993,994],{"class":48,"line":235},[46,995,996],{"class":135},"\u002F\u002F2、函数重载碰到函数默认参数\n",[46,998,999],{"class":48,"line":270},[46,1000,129],{"emptyLinePlaceholder":128},[46,1002,1003,1005,1007,1009,1011,1013,1015,1017,1019,1021,1023],{"class":48,"line":294},[46,1004,368],{"class":52},[46,1006,150],{"class":56},[46,1008,61],{"class":60},[46,1010,53],{"class":52},[46,1012,67],{"class":66},[46,1014,70],{"class":60},[46,1016,53],{"class":52},[46,1018,75],{"class":66},[46,1020,78],{"class":52},[46,1022,82],{"class":81},[46,1024,575],{"class":60},[46,1026,1027],{"class":48,"line":299},[46,1028,543],{"class":60},[46,1030,1031,1033,1035,1038,1040],{"class":48,"line":304},[46,1032,238],{"class":60},[46,1034,241],{"class":52},[46,1036,1037],{"class":244}," \"func2(int a, int b = 10) 调用\"",[46,1039,248],{"class":52},[46,1041,267],{"class":60},[46,1043,1044],{"class":48,"line":315},[46,1045,122],{"class":60},[46,1047,1048],{"class":48,"line":701},[46,1049,129],{"emptyLinePlaceholder":128},[46,1051,1052,1054,1056,1058,1060,1062],{"class":48,"line":715},[46,1053,368],{"class":52},[46,1055,150],{"class":56},[46,1057,61],{"class":60},[46,1059,53],{"class":52},[46,1061,67],{"class":66},[46,1063,575],{"class":60},[46,1065,1066],{"class":48,"line":720},[46,1067,543],{"class":60},[46,1069,1070,1072,1074,1077,1079],{"class":48,"line":725},[46,1071,238],{"class":60},[46,1073,241],{"class":52},[46,1075,1076],{"class":244}," \"func2(int a) 调用\"",[46,1078,248],{"class":52},[46,1080,267],{"class":60},[46,1082,1083],{"class":48,"line":731},[46,1084,122],{"class":60},[46,1086,1087],{"class":48,"line":737},[46,1088,129],{"emptyLinePlaceholder":128},[46,1090,1091,1093,1095],{"class":48,"line":743},[46,1092,53],{"class":52},[46,1094,224],{"class":56},[46,1096,227],{"class":60},[46,1098,1099],{"class":48,"line":749},[46,1100,839],{"class":60},[46,1102,1103,1106,1108,1111,1113],{"class":48,"line":755},[46,1104,1105],{"class":52},"    int",[46,1107,105],{"class":60},[46,1109,1110],{"class":52},"=",[46,1112,82],{"class":81},[46,1114,312],{"class":60},[46,1116,1117,1119,1122],{"class":48,"line":760},[46,1118,420],{"class":56},[46,1120,1121],{"class":60},"(a);",[46,1123,1124],{"class":135}," \u002F\u002F调用无const\n",[46,1126,1127,1129,1131,1133,1135],{"class":48,"line":769},[46,1128,420],{"class":56},[46,1130,61],{"class":60},[46,1132,425],{"class":81},[46,1134,433],{"class":60},[46,1136,1137],{"class":135},"\u002F\u002F调用有const\n",[46,1139,1140],{"class":48,"line":774},[46,1141,129],{"emptyLinePlaceholder":128},[46,1143,1144,1147],{"class":48,"line":782},[46,1145,1146],{"class":135},"    \u002F\u002Ffunc2(10);",[46,1148,1149],{"class":135}," \u002F\u002F碰到默认参数产生歧义，需要避免\n",[46,1151,1152],{"class":48,"line":793},[46,1153,129],{"emptyLinePlaceholder":128},[46,1155,1156],{"class":48,"line":805},[46,1157,129],{"emptyLinePlaceholder":128},[46,1159,1160,1162,1164],{"class":48,"line":820},[46,1161,102],{"class":52},[46,1163,309],{"class":81},[46,1165,312],{"class":60},[46,1167,1168],{"class":48,"line":836},[46,1169,122],{"class":60},[20,1171,1172],{},[33,1173,322],{},[37,1175,1178],{"className":1176,"code":1177,"language":328,"meta":42},[326],"func (int &a) 调用\nfunc (const int &a) 调用\n",[27,1179,1177],{"__ignoreMap":42},[10,1181,1183],{"id":1182},"namespace-and-name-conflicts","Namespace and Name Conflicts",[20,1185,1186],{},"In a C++ application. For example, you might write a function named xyz(), and another available library also contains an identical function xyz(). In this case, the compiler cannot determine which xyz() function you are using.",[20,1188,1189,1190,1193],{},"Therefore, the concept of ",[33,1191,1192],{},"namespace"," was introduced specifically to solve the above problem. It serves as additional information to distinguish functions, classes, variables, etc. that share the same name across different libraries. Using a namespace defines a context. Essentially, a namespace defines a scope.",[15,1195,1197],{"id":1196},"define-the-namespace","Define the namespace",[20,1199,1200,1201,1203],{},"The definition of a namespace uses the keyword ",[33,1202,1192],{},", followed by the name of the namespace, as shown below:",[37,1205,1207],{"className":39,"code":1206,"language":41,"meta":42,"style":42},"namespace namespace_name {\n   \u002F\u002F 代码声明\n}\n",[27,1208,1209,1219,1224],{"__ignoreMap":42},[46,1210,1211,1213,1216],{"class":48,"line":49},[46,1212,1192],{"class":52},[46,1214,1215],{"class":56}," namespace_name",[46,1217,1218],{"class":60}," {\n",[46,1220,1221],{"class":48,"line":99},[46,1222,1223],{"class":135},"   \u002F\u002F 代码声明\n",[46,1225,1226],{"class":48,"line":119},[46,1227,122],{"class":60},[20,1229,1230,1232,1233,1236],{},[33,1231,322],{}," 此代码块不含 ",[27,1234,1235],{},"main"," 函数，是语法、接口或分文件示例，不能独立运行，因此没有终端输出。",[20,1238,1239],{},"To call a function or variable with a namespace, you need to prefix it with the namespace name, as shown below:",[37,1241,1243],{"className":39,"code":1242,"language":41,"meta":42,"style":42},"name::code;  \u002F\u002F code 可以是变量或函数\n",[27,1244,1245],{"__ignoreMap":42},[46,1246,1247,1250,1253],{"class":48,"line":49},[46,1248,1249],{"class":56},"name",[46,1251,1252],{"class":60},"::code;",[46,1254,1255],{"class":135},"  \u002F\u002F code 可以是变量或函数\n",[20,1257,1258,1232,1260,1236],{},[33,1259,322],{},[27,1261,1235],{},[15,1263,1265],{"id":1264},"using-the-command","using the command",[20,1267,1268,1269,1272],{},"You can use the ",[33,1270,1271],{},"using namespace"," directive, so that when using the namespace, you don't need to prefix it with the namespace name. This directive tells the compiler that subsequent code will use names from the specified namespace.",[37,1274,1276],{"className":39,"code":1275,"language":41,"meta":42,"style":42},"#include \u003Ciostream>\nusing namespace std;\n\n\u002F\u002F 第一个命名空间\nnamespace first_space{\n   void func(){\n      cout \u003C\u003C \"Inside first_space\" \u003C\u003C endl;\n   }\n}\n\u002F\u002F 第二个命名空间\nnamespace second_space{\n   void func(){\n      cout \u003C\u003C \"Inside second_space\" \u003C\u003C endl;\n   }\n}\n\n\u002F\u002F 第三个命名空间\nnamespace third_space{\n   void func()\n   {\n      cout \u003C\u003C \"Inside second_space\" \u003C\u003C endl;\n   }\n}\n\nusing namespace first_space;\nusing second_space::func;    \u002F\u002F(与25行代码建议不能共存，因为都导入了func()函数)，（这种方法更好更推荐）\n\nint main ()\n{\n\n   \u002F\u002F 调用第一个命名空间中的函数\n   func();\n   \u002F\u002F 调用第二个命名空间中的函数   \n   func();         \u002F\u002F(与32行代码不能共存)\n   \u002F\u002F调用第三个命名空间中的函数\n   third_space::func();\n\n   return 0;\n}\n",[27,1277,1278,1286,1299,1303,1308,1317,1327,1341,1346,1350,1355,1364,1372,1385,1389,1393,1397,1402,1411,1419,1424,1436,1440,1444,1448,1458,1470,1474,1483,1487,1491,1496,1503,1508,1518,1523,1536,1540,1549],{"__ignoreMap":42},[46,1279,1280,1283],{"class":48,"line":49},[46,1281,1282],{"class":52},"#include",[46,1284,1285],{"class":244}," \u003Ciostream>\n",[46,1287,1288,1291,1294,1297],{"class":48,"line":99},[46,1289,1290],{"class":52},"using",[46,1292,1293],{"class":52}," namespace",[46,1295,1296],{"class":56}," std",[46,1298,312],{"class":60},[46,1300,1301],{"class":48,"line":119},[46,1302,129],{"emptyLinePlaceholder":128},[46,1304,1305],{"class":48,"line":125},[46,1306,1307],{"class":135},"\u002F\u002F 第一个命名空间\n",[46,1309,1310,1312,1315],{"class":48,"line":132},[46,1311,1192],{"class":52},[46,1313,1314],{"class":56}," first_space",[46,1316,543],{"class":60},[46,1318,1319,1322,1324],{"class":48,"line":139},[46,1320,1321],{"class":52},"   void",[46,1323,57],{"class":56},[46,1325,1326],{"class":60},"(){\n",[46,1328,1329,1332,1334,1337,1339],{"class":48,"line":145},[46,1330,1331],{"class":60},"      cout ",[46,1333,241],{"class":52},[46,1335,1336],{"class":244}," \"Inside first_space\"",[46,1338,248],{"class":52},[46,1340,267],{"class":60},[46,1342,1343],{"class":48,"line":176},[46,1344,1345],{"class":60},"   }\n",[46,1347,1348],{"class":48,"line":197},[46,1349,122],{"class":60},[46,1351,1352],{"class":48,"line":209},[46,1353,1354],{"class":135},"\u002F\u002F 第二个命名空间\n",[46,1356,1357,1359,1362],{"class":48,"line":214},[46,1358,1192],{"class":52},[46,1360,1361],{"class":56}," second_space",[46,1363,543],{"class":60},[46,1365,1366,1368,1370],{"class":48,"line":219},[46,1367,1321],{"class":52},[46,1369,57],{"class":56},[46,1371,1326],{"class":60},[46,1373,1374,1376,1378,1381,1383],{"class":48,"line":230},[46,1375,1331],{"class":60},[46,1377,241],{"class":52},[46,1379,1380],{"class":244}," \"Inside second_space\"",[46,1382,248],{"class":52},[46,1384,267],{"class":60},[46,1386,1387],{"class":48,"line":235},[46,1388,1345],{"class":60},[46,1390,1391],{"class":48,"line":270},[46,1392,122],{"class":60},[46,1394,1395],{"class":48,"line":294},[46,1396,129],{"emptyLinePlaceholder":128},[46,1398,1399],{"class":48,"line":299},[46,1400,1401],{"class":135},"\u002F\u002F 第三个命名空间\n",[46,1403,1404,1406,1409],{"class":48,"line":304},[46,1405,1192],{"class":52},[46,1407,1408],{"class":56}," third_space",[46,1410,543],{"class":60},[46,1412,1413,1415,1417],{"class":48,"line":315},[46,1414,1321],{"class":52},[46,1416,57],{"class":56},[46,1418,538],{"class":60},[46,1420,1421],{"class":48,"line":701},[46,1422,1423],{"class":60},"   {\n",[46,1425,1426,1428,1430,1432,1434],{"class":48,"line":715},[46,1427,1331],{"class":60},[46,1429,241],{"class":52},[46,1431,1380],{"class":244},[46,1433,248],{"class":52},[46,1435,267],{"class":60},[46,1437,1438],{"class":48,"line":720},[46,1439,1345],{"class":60},[46,1441,1442],{"class":48,"line":725},[46,1443,122],{"class":60},[46,1445,1446],{"class":48,"line":731},[46,1447,129],{"emptyLinePlaceholder":128},[46,1449,1450,1452,1454,1456],{"class":48,"line":737},[46,1451,1290],{"class":52},[46,1453,1293],{"class":52},[46,1455,1314],{"class":56},[46,1457,312],{"class":60},[46,1459,1460,1462,1464,1467],{"class":48,"line":743},[46,1461,1290],{"class":52},[46,1463,1361],{"class":56},[46,1465,1466],{"class":60},"::func;",[46,1468,1469],{"class":135},"    \u002F\u002F(与25行代码建议不能共存，因为都导入了func()函数)，（这种方法更好更推荐）\n",[46,1471,1472],{"class":48,"line":749},[46,1473,129],{"emptyLinePlaceholder":128},[46,1475,1476,1478,1480],{"class":48,"line":755},[46,1477,53],{"class":52},[46,1479,224],{"class":56},[46,1481,1482],{"class":60}," ()\n",[46,1484,1485],{"class":48,"line":760},[46,1486,543],{"class":60},[46,1488,1489],{"class":48,"line":769},[46,1490,129],{"emptyLinePlaceholder":128},[46,1492,1493],{"class":48,"line":774},[46,1494,1495],{"class":135},"   \u002F\u002F 调用第一个命名空间中的函数\n",[46,1497,1498,1501],{"class":48,"line":782},[46,1499,1500],{"class":56},"   func",[46,1502,779],{"class":60},[46,1504,1505],{"class":48,"line":793},[46,1506,1507],{"class":135},"   \u002F\u002F 调用第二个命名空间中的函数   \n",[46,1509,1510,1512,1515],{"class":48,"line":805},[46,1511,1500],{"class":56},[46,1513,1514],{"class":60},"();",[46,1516,1517],{"class":135},"         \u002F\u002F(与32行代码不能共存)\n",[46,1519,1520],{"class":48,"line":820},[46,1521,1522],{"class":135},"   \u002F\u002F调用第三个命名空间中的函数\n",[46,1524,1525,1528,1531,1534],{"class":48,"line":836},[46,1526,1527],{"class":56},"   third_space",[46,1529,1530],{"class":60},"::",[46,1532,1533],{"class":56},"func",[46,1535,779],{"class":60},[46,1537,1538],{"class":48,"line":842},[46,1539,129],{"emptyLinePlaceholder":128},[46,1541,1542,1545,1547],{"class":48,"line":847},[46,1543,1544],{"class":52},"   return",[46,1546,309],{"class":81},[46,1548,312],{"class":60},[46,1550,1551],{"class":48,"line":856},[46,1552,122],{"class":60},[20,1554,1555,1557,1558,1560,1561,1564,1565,1567],{},[33,1556,322],{}," 编译失败：",[27,1559,1271],{}," 把两个同名 ",[27,1562,1563],{},"func()"," 同时引入当前作用域，调用 ",[27,1566,1563],{}," 时产生二义性。",[15,1569,1571],{"id":1570},"nested-namespaces","Nested namespaces",[20,1573,1574],{},"Namespaces can be nested. You can define one namespace inside another, as shown below:",[37,1576,1578],{"className":39,"code":1577,"language":41,"meta":42,"style":42},"namespace namespace_name1 {\n   \u002F\u002F 代码声明\n   namespace namespace_name2 {\n      \u002F\u002F 代码声明\n   }\n}\n",[27,1579,1580,1589,1593,1603,1608,1612],{"__ignoreMap":42},[46,1581,1582,1584,1587],{"class":48,"line":49},[46,1583,1192],{"class":52},[46,1585,1586],{"class":56}," namespace_name1",[46,1588,1218],{"class":60},[46,1590,1591],{"class":48,"line":99},[46,1592,1223],{"class":135},[46,1594,1595,1598,1601],{"class":48,"line":119},[46,1596,1597],{"class":52},"   namespace",[46,1599,1600],{"class":56}," namespace_name2",[46,1602,1218],{"class":60},[46,1604,1605],{"class":48,"line":125},[46,1606,1607],{"class":135},"      \u002F\u002F 代码声明\n",[46,1609,1610],{"class":48,"line":132},[46,1611,1345],{"class":60},[46,1613,1614],{"class":48,"line":139},[46,1615,122],{"class":60},[20,1617,1618,1232,1620,1236],{},[33,1619,322],{},[27,1621,1235],{},[20,1623,1624,1625,1627],{},"You can access members in a nested namespace by using the ",[33,1626,1530],{}," operator:",[37,1629,1631],{"className":39,"code":1630,"language":41,"meta":42,"style":42},"\u002F\u002F 访问 namespace_name2 中的成员\nusing namespace namespace_name1::namespace_name2;\n\n\u002F\u002F 访问 namespace_name1 中的成员\nusing namespace namespace_name1;\n",[27,1632,1633,1638,1653,1657,1662],{"__ignoreMap":42},[46,1634,1635],{"class":48,"line":49},[46,1636,1637],{"class":135},"\u002F\u002F 访问 namespace_name2 中的成员\n",[46,1639,1640,1642,1644,1646,1648,1651],{"class":48,"line":99},[46,1641,1290],{"class":52},[46,1643,1293],{"class":52},[46,1645,1586],{"class":56},[46,1647,1530],{"class":60},[46,1649,1650],{"class":56},"namespace_name2",[46,1652,312],{"class":60},[46,1654,1655],{"class":48,"line":119},[46,1656,129],{"emptyLinePlaceholder":128},[46,1658,1659],{"class":48,"line":125},[46,1660,1661],{"class":135},"\u002F\u002F 访问 namespace_name1 中的成员\n",[46,1663,1664,1666,1668,1670],{"class":48,"line":132},[46,1665,1290],{"class":52},[46,1667,1293],{"class":52},[46,1669,1586],{"class":56},[46,1671,312],{"class":60},[20,1673,1674,1232,1676,1236],{},[33,1675,322],{},[27,1677,1235],{},[1679,1680,1681],"style",{},"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 .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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);}",{"title":42,"searchDepth":99,"depth":99,"links":1683},[1684,1689],{"id":12,"depth":99,"text":13,"children":1685},[1686,1687,1688],{"id":17,"depth":119,"text":18},{"id":333,"depth":119,"text":334},{"id":469,"depth":119,"text":470},{"id":1182,"depth":99,"text":1183,"children":1690},[1691,1692,1693],{"id":1196,"depth":119,"text":1197},{"id":1264,"depth":119,"text":1265},{"id":1570,"depth":119,"text":1571},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian",0,"1300","2023-10-05","wiki\u002F2023-10-05-cplusplus-jiao-xue","en-us:2023-10-05-cplusplus-jiao-xue","\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue","Cplusplus教学","md","wiki\u002F2023-10-05-Cplusplus教学\u002F1300-函数提高与命名空间",false,null,"en-US","en-us",{},{"title":5,"description":42},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1300-函数提高与命名空间","R03t8T-fqs-w38ZSVfZgmevXc6f6x2jasbxu1atVwA0",[1714,1719,1724,1729,1734,1739,1744,1749,1754,1759,1764,1769,1774,1775,1780,1785,1790,1795,1800,1805,1810,1815,1820,1825,1830,1835,1840,1845,1850,1855,1860,1865,1870,1875,1880,1885,1890,1895,1900,1905,1909,1914,1919,1924,1929,1934,1939,1944,1949,1954,1959,1964,1969,1974,1979,1984,1989,1994,1999,2004,2009,2014,2019,2024,2029,2034,2039,2044,2049,2054,2059,2064,2069,2074,2079,2084,2089,2094,2099,2104,2109,2114],{"path":1715,"stem":1716,"title":1717,"date":1697,"chapterOrder":1718,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0100-c-kai-fa-huan-jing-da-jian-yu-ce-shi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0100-C++开发环境搭建与测试","C++ Development Environment Setup and Testing","0100",{"path":1720,"stem":1721,"title":1722,"date":1697,"chapterOrder":1723,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0200-c-ji-chu-chu-shi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0200-C++基础初识","C++ Basics","0200",{"path":1725,"stem":1726,"title":1727,"date":1697,"chapterOrder":1728,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0300-shu-ju-lei-xing-yu-shu-ju-cun-fang","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0300-数据类型与数据存放","Data Types and Data Storage","0300",{"path":1730,"stem":1731,"title":1732,"date":1697,"chapterOrder":1733,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0400-shu-ru-shu-chu","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0400-输入输出","Input and Output","0400",{"path":1735,"stem":1736,"title":1737,"date":1697,"chapterOrder":1738,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0500-yun-suan-fu","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0500-运算符","operator","0500",{"path":1740,"stem":1741,"title":1742,"date":1697,"chapterOrder":1743,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0600-cheng-xu-liu-cheng-jie-gou","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0600-程序流程结构","program flow structure","0600",{"path":1745,"stem":1746,"title":1747,"date":1697,"chapterOrder":1748,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0700-shu-zu","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0700-数组","array","0700",{"path":1750,"stem":1751,"title":1752,"date":1697,"chapterOrder":1753,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0800-han-shu-yu-tou-wen-jian","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0800-函数与头文件","Functions and Header Files","0800",{"path":1755,"stem":1756,"title":1757,"date":1697,"chapterOrder":1758,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0900-zhi-zhen","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0900-指针","pointer","0900",{"path":1760,"stem":1761,"title":1762,"date":1697,"chapterOrder":1763,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1000-jie-gou-ti-yu-gong-yong-ti","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1000-结构体与共用体","Structures and Unions","1000",{"path":1765,"stem":1766,"title":1767,"date":1697,"chapterOrder":1768,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1100-nei-cun-fen-qu-yu-sheng-ming-zhou-qi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1100-内存分区与生命周期","Memory Partitioning and Lifecycle","1100",{"path":1770,"stem":1771,"title":1772,"date":1697,"chapterOrder":1773,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1200-yin-yong","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1200-引用","reference","1200",{"path":1694,"stem":1711,"title":5,"date":1697,"chapterOrder":1696,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},{"path":1776,"stem":1777,"title":1778,"date":1697,"chapterOrder":1779,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0100-feng-zhuang","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1400-0100-封装","encapsulation","1400-0100",{"path":1781,"stem":1782,"title":1783,"date":1697,"chapterOrder":1784,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0200-dui-xiang-chu-shi-hua-he-qing-li","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1400-0200-对象初始化和清理","Object initialization and cleanup","1400-0200",{"path":1786,"stem":1787,"title":1788,"date":1697,"chapterOrder":1789,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0300-dui-xiang-mo-xing-yu-this-zhi-zhen","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1400-0300-对象模型与this指针","Object Model and the `this` Pointer","1400-0300",{"path":1791,"stem":1792,"title":1793,"date":1697,"chapterOrder":1794,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0400-you-yuan-yu-yun-suan-fu-zhong-zai","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1400-0400-友元与运算符重载","Friends and operator overloading","1400-0400",{"path":1796,"stem":1797,"title":1798,"date":1697,"chapterOrder":1799,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0500-ji-cheng","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1400-0500-继承","inheritance","1400-0500",{"path":1801,"stem":1802,"title":1803,"date":1697,"chapterOrder":1804,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0600-duo-tai","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1400-0600-多态","polymorphism","1400-0600",{"path":1806,"stem":1807,"title":1808,"date":1697,"chapterOrder":1809,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-lei-he-dui-xiang","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1400-类和对象","Classes and Objects","1400",{"path":1811,"stem":1812,"title":1813,"date":1697,"chapterOrder":1814,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1500-wen-jian-cao-zuo","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1500-文件操作","File operations","1500",{"path":1816,"stem":1817,"title":1818,"date":1697,"chapterOrder":1819,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1600-yi-chang-chu-li-yu-cuo-wu-ma","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1600-异常处理与错误码","异常处理","1600",{"path":1821,"stem":1822,"title":1823,"date":1697,"chapterOrder":1824,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1700-mu-ban","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1700-模板","template","1700",{"path":1826,"stem":1827,"title":1828,"date":1697,"chapterOrder":1829,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0100-stl-chu-shi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-0100-STL初识","Introduction to STL","1800-0100",{"path":1831,"stem":1832,"title":1833,"date":1697,"chapterOrder":1834,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0200-std-array","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-0200-std-array","std::array","1800-0200",{"path":1836,"stem":1837,"title":1838,"date":1697,"chapterOrder":1839,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0300-string-rong-qi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-0300-string容器","string container","1800-0300",{"path":1841,"stem":1842,"title":1843,"date":1697,"chapterOrder":1844,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0400-vector-rong-qi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-0400-vector容器","vector 容器","1800-0400",{"path":1846,"stem":1847,"title":1848,"date":1697,"chapterOrder":1849,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0500-deque-rong-qi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-0500-deque容器","deque 容器","1800-0500",{"path":1851,"stem":1852,"title":1853,"date":1697,"chapterOrder":1854,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0600-stack-rong-qi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-0600-stack容器","stack 容器","1800-0600",{"path":1856,"stem":1857,"title":1858,"date":1697,"chapterOrder":1859,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0700-queue-rong-qi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-0700-queue容器","queue container","1800-0700",{"path":1861,"stem":1862,"title":1863,"date":1697,"chapterOrder":1864,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0800-list-rong-qi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-0800-list容器","list 容器","1800-0800",{"path":1866,"stem":1867,"title":1868,"date":1697,"chapterOrder":1869,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0900-set-rong-qi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-0900-set容器","set \u002F multiset 容器","1800-0900",{"path":1871,"stem":1872,"title":1873,"date":1697,"chapterOrder":1874,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-1000-map-rong-qi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-1000-map容器","map \u002F multimap 容器","1800-1000",{"path":1876,"stem":1877,"title":1878,"date":1697,"chapterOrder":1879,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-1100-han-shu-dui-xiang-yu-wei-ci","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-1100-函数对象与谓词","Function objects and predicates","1800-1100",{"path":1881,"stem":1882,"title":1883,"date":1697,"chapterOrder":1884,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-1200-chang-yong-suan-fa","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-1200-常用算法","Common algorithms","1800-1200",{"path":1886,"stem":1887,"title":1888,"date":1697,"chapterOrder":1889,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-stl-ti-gao-bian-cheng","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1800-STL提高编程","Level up your programming with STL.","1800",{"path":1891,"stem":1892,"title":1893,"date":1697,"chapterOrder":1894,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1900-c-lei-xing-zhuan-huan","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1900-C++类型转换","C++ Type Casting","1900",{"path":1896,"stem":1897,"title":1898,"date":1697,"chapterOrder":1899,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0100-auto","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-0100-auto","auto","2000-0100",{"path":1901,"stem":1902,"title":1903,"date":1697,"chapterOrder":1904,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0200-nullptr","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-0200-nullptr","nullptr","2000-0200",{"path":1906,"stem":1907,"title":1290,"date":1697,"chapterOrder":1908,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0300-using","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-0300-using","2000-0300",{"path":1910,"stem":1911,"title":1912,"date":1697,"chapterOrder":1913,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0400-enum-class","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-0400-enum-class","enum class","2000-0400",{"path":1915,"stem":1916,"title":1917,"date":1697,"chapterOrder":1918,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0500-fan-wei-for-xun-huan","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-0500-范围for循环","range-based for loop","2000-0500",{"path":1920,"stem":1921,"title":1922,"date":1697,"chapterOrder":1923,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0600-jie-gou-hua-bang-ding","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-0600-结构化绑定","structured binding","2000-0600",{"path":1925,"stem":1926,"title":1927,"date":1697,"chapterOrder":1928,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0700-constexpr","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-0700-constexpr","constexpr","2000-0700",{"path":1930,"stem":1931,"title":1932,"date":1697,"chapterOrder":1933,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0800-raii","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-0800-RAII","RAII","2000-0800",{"path":1935,"stem":1936,"title":1937,"date":1697,"chapterOrder":1938,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0900-zhi-neng-zhi-zhen","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-0900-智能指针","Smart pointer","2000-0900",{"path":1940,"stem":1941,"title":1942,"date":1697,"chapterOrder":1943,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1000-you-zhi-yin-yong-he-yi-dong-yu-yi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1000-右值引用和移动语义","Rvalue references and move semantics","2000-1000",{"path":1945,"stem":1946,"title":1947,"date":1697,"chapterOrder":1948,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1100-lambda-biao-da-shi","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1100-Lambda表达式","Lambda expression","2000-1100",{"path":1950,"stem":1951,"title":1952,"date":1697,"chapterOrder":1953,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1200-std-function","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1200-std-function","std::function","2000-1200",{"path":1955,"stem":1956,"title":1957,"date":1697,"chapterOrder":1958,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1300-std-bind","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1300-std-bind","std::bind","2000-1300",{"path":1960,"stem":1961,"title":1962,"date":1697,"chapterOrder":1963,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1400-std-optional","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1400-std-optional","std::optional","2000-1400",{"path":1965,"stem":1966,"title":1967,"date":1697,"chapterOrder":1968,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1500-std-variant","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1500-std-variant","std::variant","2000-1500",{"path":1970,"stem":1971,"title":1972,"date":1697,"chapterOrder":1973,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1600-std-span","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1600-std-span","std::span","2000-1600",{"path":1975,"stem":1976,"title":1977,"date":1697,"chapterOrder":1978,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1700-std-format-print","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1700-std-format-print","std::format \u002F std::print","2000-1700",{"path":1980,"stem":1981,"title":1982,"date":1697,"chapterOrder":1983,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1800-std-chrono","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1800-std-chrono","std::chrono","2000-1800",{"path":1985,"stem":1986,"title":1987,"date":1697,"chapterOrder":1988,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0100-std-thread","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0100-std-thread","std::thread and join","2000-1900-0100",{"path":1990,"stem":1991,"title":1992,"date":1697,"chapterOrder":1993,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0200-mutex-lock-guard","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0200-mutex-lock-guard","mutex 与 lock_guard","2000-1900-0200",{"path":1995,"stem":1996,"title":1997,"date":1697,"chapterOrder":1998,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0300-std-atomic","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0300-std-atomic","std::atomic","2000-1900-0300",{"path":2000,"stem":2001,"title":2002,"date":1697,"chapterOrder":2003,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0400-condition-variable","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0400-condition-variable","condition_variable","2000-1900-0400",{"path":2005,"stem":2006,"title":2007,"date":1697,"chapterOrder":2008,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-bing-fa-bian-cheng","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-并发编程","Concurrent programming","2000-1900",{"path":2010,"stem":2011,"title":2012,"date":1697,"chapterOrder":2013,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-2000-std-filesystem","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-2000-std-filesystem","std::filesystem","2000-2000",{"path":2015,"stem":2016,"title":2017,"date":1697,"chapterOrder":2018,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-2100-modules-jian-jie","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-2100-modules简介","Modules Introduction","2000-2100",{"path":2020,"stem":2021,"title":2022,"date":1697,"chapterOrder":2023,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-xian-dai-c","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-现代C++","Modern C++","2000",{"path":2025,"stem":2026,"title":2027,"date":1697,"chapterOrder":2028,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0100-ding-shi-qi-yu-yi-bu-io","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0100-定时器与异步IO","Timers and Asynchronous I\u002FO","2100-0100-0100",{"path":2030,"stem":2031,"title":2032,"date":1697,"chapterOrder":2033,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0200-boost-asio-ji-chu","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0200-Boost.Asio基础","Boost.Asio Basics","2100-0100-0200",{"path":2035,"stem":2036,"title":2037,"date":1697,"chapterOrder":2038,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0300-chuan-kou-tong-xin","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0300-串口通信","serial communication","2100-0100-0300",{"path":2040,"stem":2041,"title":2042,"date":1697,"chapterOrder":2043,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0400-tcp-tong-xin","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0400-TCP通信","TCP communication","2100-0100-0400",{"path":2045,"stem":2046,"title":2047,"date":1697,"chapterOrder":2048,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0500-udp-tong-xin","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0500-UDP通信","UDP communication","2100-0100-0500",{"path":2050,"stem":2051,"title":2052,"date":1697,"chapterOrder":2053,"chapterDepth":99,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0600-ji-qi-ren-gong-cheng-xie-fa-yu-ros2-ji-cheng","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0600-机器人工程写法与ROS2集成","Robot Engineering Approach and ROS2 Integration","2100-0100-0600",{"path":2055,"stem":2056,"title":2057,"date":1697,"chapterOrder":2058,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-boost-asio-yi-bu-io-ku","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-Boost.Asio异步IO库","Boost.Asio asynchronous IO library","2100-0100",{"path":2060,"stem":2061,"title":2062,"date":1697,"chapterOrder":2063,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0200-eigen-xian-xing-dai-shu-ku","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0200-Eigen线性代数库","Eigen linear algebra library","2100-0200",{"path":2065,"stem":2066,"title":2067,"date":1697,"chapterOrder":2068,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0300-opencv-ji-suan-ji-shi-jue-ku","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0300-OpenCV计算机视觉库","OpenCV Computer Vision Library","2100-0300",{"path":2070,"stem":2071,"title":2072,"date":1697,"chapterOrder":2073,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0400-pcl-dian-yun-ku","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0400-PCL点云库","PCL Point Cloud Library","2100-0400",{"path":2075,"stem":2076,"title":2077,"date":1697,"chapterOrder":2078,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0500-sophus-li-qun-li-dai-shu-ku","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-0500-Sophus李群李代数库","Sophus Lie group and Lie algebra library","2100-0500",{"path":2080,"stem":2081,"title":2082,"date":1697,"chapterOrder":2083,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-chang-yong-ku","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2100-常用库","Learning Common Libraries","2100",{"path":2085,"stem":2086,"title":2087,"date":1697,"chapterOrder":2088,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0100-cmakepresets-yu-gou-jian-an-zhuang","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2200-0100-CMakePresets与构建安装","CMakePresets and Build Installation","2200-0100",{"path":2090,"stem":2091,"title":2092,"date":1697,"chapterOrder":2093,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0200-ding-ceng-cmake-yu-gong-gong-bian-yi-xuan-xiang","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2200-0200-顶层CMake与公共编译选项","Top-level CMake and Public Compilation Options","2200-0200",{"path":2095,"stem":2096,"title":2097,"date":1697,"chapterOrder":2098,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0300-src-yu-lib-mo-kuai-cmake-xiang-jie","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2200-0300-src与lib模块CMake详解","Detailed CMake Explanation for src and lib Modules","2200-0300",{"path":2100,"stem":2101,"title":2102,"date":1697,"chapterOrder":2103,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0400-di-san-fang-ku-yi-lai-xie-fa","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2200-0400-第三方库依赖写法","How to write third-party library dependencies","2200-0400",{"path":2105,"stem":2106,"title":2107,"date":1697,"chapterOrder":2108,"chapterDepth":49,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0500-mu-ban-kuo-zhan-yu-chang-jian-wen-ti","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2200-0500-模板扩展与常见问题","Template Extensions and FAQ","2200-0500",{"path":2110,"stem":2111,"title":2112,"date":1697,"chapterOrder":2113,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":1704},"\u002Fen-us\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-cmake-gong-cheng-mu-ban","_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2200-CMake工程模板","CMake Project Template","2200",{"path":1700,"stem":2115,"title":2116,"date":1697,"chapterOrder":1705,"chapterDepth":1695,"docKey":1699,"docRoot":1700,"docTitle":1701,"isWikiDoc":128,"isWikiIndex":128},"_i18n\u002Fen-us\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002Findex","C\u002FC++ tutorial",{"variants":2118},[2119,2120,2123,2126,2129],{"path":1694,"localeSlug":1707,"i18nKey":1703},{"path":2121,"localeSlug":2122,"i18nKey":1703},"\u002Fzh-hant\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian","zh-hant",{"path":2124,"localeSlug":2125,"i18nKey":1703},"\u002Fzh-hk\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian","zh-hk",{"path":2127,"localeSlug":2128,"i18nKey":1703},"\u002Fzh-tw\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian","zh-tw",{"path":2130,"localeSlug":2131,"i18nKey":1703},"\u002Fzh-cn\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian","zh-cn",[1694,1710,2121,1710,2124,1710,2127,1710,2130,1710],1784646862758]