[{"data":1,"prerenderedAt":2214},["ShallowReactive",2],{"wiki-page-\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0200-c-ji-chu-chu-shi":3,"wiki-doc-items-2023-10-05-cplusplus-jiao-xue":1657,"wiki:author-members":2202},{"id":4,"title":5,"authors":6,"body":8,"chapterDepth":1644,"chapterOrder":1645,"date":1646,"description":39,"docKey":1647,"docRoot":1648,"docTitle":1649,"extension":1650,"isWikiDoc":163,"isWikiIndex":1651,"meta":1652,"navigation":163,"path":1653,"seo":1654,"stem":1655,"wikiDepth":97,"__hash__":1656},"wiki\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F0200-C++基础初识.md","C++基础初识",[7],"董佳辉",{"type":9,"value":10,"toc":1627},"minimark",[11,16,20,29,32,42,49,52,76,83,86,119,128,132,135,140,143,257,263,269,273,276,294,297,300,307,310,315,318,323,328,331,336,339,345,382,387,444,448,451,484,487,661,676,679,705,710,716,731,734,740,745,774,779,782,787,795,799,909,913,919,924,927,932,935,965,969,1117,1121,1127,1130,1133,1140,1143,1371,1376,1379,1384,1398,1403,1407,1411,1414,1417,1420,1431,1434,1540,1543,1547,1550,1575,1578,1583,1586,1589,1620,1623],[12,13,15],"h2",{"id":14},"c初识","C++初识",[17,18,19],"h3",{"id":19},"本章运行约定",[21,22,23,24,28],"p",{},"本章的代码示例默认在 ",[25,26,27],"code",{},"ch1-C++开发环境与第一个工程"," 下载并跑通的 CMake 模板中运行。",[21,30,31],{},"从这一章开始，前期语法练习只改这个文件：",[33,34,40],"pre",{"className":35,"code":37,"language":38,"meta":39},[36],"language-text","src\u002Fmain.cpp\n","text","",[25,41,37],{"__ignoreMap":39},[21,43,44,45,48],{},"每个示例都可以把代码复制到 ",[25,46,47],{},"src\u002Fmain.cpp"," 中，然后重新构建并运行模板程序。",[21,50,51],{},"暂时不要修改这些文件和目录：",[53,54,55,61,66,71],"ol",{},[56,57,58],"li",{},[25,59,60],{},"CMakeLists.txt",[56,62,63],{},[25,64,65],{},"src\u002FCMakeLists.txt",[56,67,68],{},[25,69,70],{},"src\u002Flib1\u002F",[56,72,73],{},[25,74,75],{},"src\u002Flib2\u002F",[21,77,78,79,82],{},"也不用手动写 ",[25,80,81],{},"g++ main.cpp","。我们继续用上一章已经跑通的 CMake 模板来编译程序。",[21,84,85],{},"常用命令：",[33,87,91],{"className":88,"code":89,"language":90,"meta":39,"style":39},"language-bash shiki shiki-themes github-light github-dark","cmake --build --preset linux-debug\n.\u002Fbuild\u002Flinux-debug\u002Fsrc\u002Fcmake_template\n","bash",[25,92,93,113],{"__ignoreMap":39},[94,95,98,102,106,109],"span",{"class":96,"line":97},"line",1,[94,99,101],{"class":100},"sScJk","cmake",[94,103,105],{"class":104},"sj4cs"," --build",[94,107,108],{"class":104}," --preset",[94,110,112],{"class":111},"sZZnC"," linux-debug\n",[94,114,116],{"class":96,"line":115},2,[94,117,118],{"class":100},".\u002Fbuild\u002Flinux-debug\u002Fsrc\u002Fcmake_template\n",[21,120,121,122,127],{},"如果你还没有完成上一章的工程环境搭建，请先看从 ",[123,124,126],"a",{"href":125},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0100-c-kai-fa-huan-jing-da-jian-yu-ce-shi","C++开发环境与第一个工程"," 开始，本教程一直使用同一个 CMake 模板。写到这里时，你的工程大致还是这个结构.",[17,129,131],{"id":130},"第一个c程序","第一个C++程序",[21,133,134],{},"打开工程中的：",[33,136,138],{"className":137,"code":37,"language":38,"meta":39},[36],[25,139,37],{"__ignoreMap":39},[21,141,142],{},"把内容替换为：",[33,144,148],{"className":145,"code":146,"language":147,"meta":39,"style":39},"language-cpp shiki shiki-themes github-light github-dark","#include \u003Ciostream>\n\nusing namespace std;\n\nint main()\n{\n    \u002F\u002F 程序从 main 函数开始执行，下面的语句会按顺序运行。\n    cout \u003C\u003C \"Hello world\" \u003C\u003C endl;\n\n    \u002F\u002F 返回 0 表示程序正常结束。\n    return 0;\n}\n","cpp",[25,149,150,159,165,181,186,198,204,211,229,234,240,251],{"__ignoreMap":39},[94,151,152,156],{"class":96,"line":97},[94,153,155],{"class":154},"szBVR","#include",[94,157,158],{"class":111}," \u003Ciostream>\n",[94,160,161],{"class":96,"line":115},[94,162,164],{"emptyLinePlaceholder":163},true,"\n",[94,166,168,171,174,177],{"class":96,"line":167},3,[94,169,170],{"class":154},"using",[94,172,173],{"class":154}," namespace",[94,175,176],{"class":100}," std",[94,178,180],{"class":179},"sVt8B",";\n",[94,182,184],{"class":96,"line":183},4,[94,185,164],{"emptyLinePlaceholder":163},[94,187,189,192,195],{"class":96,"line":188},5,[94,190,191],{"class":154},"int",[94,193,194],{"class":100}," main",[94,196,197],{"class":179},"()\n",[94,199,201],{"class":96,"line":200},6,[94,202,203],{"class":179},"{\n",[94,205,207],{"class":96,"line":206},7,[94,208,210],{"class":209},"sJ8bj","    \u002F\u002F 程序从 main 函数开始执行，下面的语句会按顺序运行。\n",[94,212,214,217,220,223,226],{"class":96,"line":213},8,[94,215,216],{"class":179},"    cout ",[94,218,219],{"class":154},"\u003C\u003C",[94,221,222],{"class":111}," \"Hello world\"",[94,224,225],{"class":154}," \u003C\u003C",[94,227,228],{"class":179}," endl;\n",[94,230,232],{"class":96,"line":231},9,[94,233,164],{"emptyLinePlaceholder":163},[94,235,237],{"class":96,"line":236},10,[94,238,239],{"class":209},"    \u002F\u002F 返回 0 表示程序正常结束。\n",[94,241,243,246,249],{"class":96,"line":242},11,[94,244,245],{"class":154},"    return",[94,247,248],{"class":104}," 0",[94,250,180],{"class":179},[94,252,254],{"class":96,"line":253},12,[94,255,256],{"class":179},"}\n",[21,258,259],{},[260,261,262],"strong",{},"运行结果：",[33,264,267],{"className":265,"code":266,"language":38,"meta":39},[36],"Hello world\n",[25,268,266],{"__ignoreMap":39},[270,271,272],"h4",{"id":272},"构建并运行程序",[21,274,275],{},"在工程根目录执行：(或者直接用上一节讲的图形化界面编译,下面也会再教你一下)",[33,277,278],{"className":88,"code":89,"language":90,"meta":39,"style":39},[25,279,280,290],{"__ignoreMap":39},[94,281,282,284,286,288],{"class":96,"line":97},[94,283,101],{"class":100},[94,285,105],{"class":104},[94,287,108],{"class":104},[94,289,112],{"class":111},[94,291,292],{"class":96,"line":115},[94,293,118],{"class":100},[21,295,296],{},"图形化步骤:",[21,298,299],{},"配置成build+debug模式:",[21,301,302],{},[303,304],"img",{"alt":305,"src":306},"alt text","https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002F1780711946967.webp",[21,308,309],{},"点击左下角的build.",[21,311,312],{},[303,313],{"alt":305,"src":314},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002F1780712055746.webp",[21,316,317],{},"运行",[21,319,320],{},[303,321],{"alt":305,"src":322},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002F1780712071584.webp",[21,324,325],{},[303,326],{"alt":305,"src":327},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002F1780712086586.webp",[21,329,330],{},"终端输出：",[33,332,334],{"className":333,"code":266,"language":38,"meta":39},[36],[25,335,266],{"__ignoreMap":39},[17,337,338],{"id":338},"main函数参数",[21,340,341,344],{},[25,342,343],{},"main"," 函数不是必须带参数。最常见的两种写法是：",[33,346,348],{"className":145,"code":347,"language":147,"meta":39,"style":39},"int main()\n{\n    \u002F\u002F 程序从 main 函数开始执行，下面的语句会按顺序运行。\n    \u002F\u002F 返回 0 表示程序正常结束。\n    return 0;\n}\n",[25,349,350,358,362,366,370,378],{"__ignoreMap":39},[94,351,352,354,356],{"class":96,"line":97},[94,353,191],{"class":154},[94,355,194],{"class":100},[94,357,197],{"class":179},[94,359,360],{"class":96,"line":115},[94,361,203],{"class":179},[94,363,364],{"class":96,"line":167},[94,365,210],{"class":209},[94,367,368],{"class":96,"line":183},[94,369,239],{"class":209},[94,371,372,374,376],{"class":96,"line":188},[94,373,245],{"class":154},[94,375,248],{"class":104},[94,377,180],{"class":179},[94,379,380],{"class":96,"line":200},[94,381,256],{"class":179},[21,383,384,386],{},[260,385,262],{}," 程序正常结束，终端没有输出。",[33,388,390],{"className":145,"code":389,"language":147,"meta":39,"style":39},"int main(int argc, char* argv[])\n{\n    \u002F\u002F 程序从 main 函数开始执行，argc\u002Fargv 用来接收命令行参数。\n    \u002F\u002F 返回 0 表示程序正常结束。\n    return 0;\n}\n",[25,391,392,419,423,428,432,440],{"__ignoreMap":39},[94,393,394,396,398,401,403,407,410,413,416],{"class":96,"line":97},[94,395,191],{"class":154},[94,397,194],{"class":100},[94,399,400],{"class":179},"(",[94,402,191],{"class":154},[94,404,406],{"class":405},"s4XuR"," argc",[94,408,409],{"class":179},", ",[94,411,412],{"class":154},"char*",[94,414,415],{"class":405}," argv",[94,417,418],{"class":179},"[])\n",[94,420,421],{"class":96,"line":115},[94,422,203],{"class":179},[94,424,425],{"class":96,"line":167},[94,426,427],{"class":209},"    \u002F\u002F 程序从 main 函数开始执行，argc\u002Fargv 用来接收命令行参数。\n",[94,429,430],{"class":96,"line":183},[94,431,239],{"class":209},[94,433,434,436,438],{"class":96,"line":188},[94,435,245],{"class":154},[94,437,248],{"class":104},[94,439,180],{"class":179},[94,441,442],{"class":96,"line":200},[94,443,256],{"class":179},[21,445,446,386],{},[260,447,262],{},[21,449,450],{},"其中：",[452,453,454,460,474],"ul",{},[56,455,456,459],{},[25,457,458],{},"argc"," 表示命令行参数的数量，通常至少为 1，因为程序自身的路径也会算作一个参数。",[56,461,462,465,466,469,470,473],{},[25,463,464],{},"argv"," 表示命令行参数数组，",[25,467,468],{},"argv[0]"," 通常是程序自身的路径或名称，",[25,471,472],{},"argv[1]"," 开始才是用户传入的参数。",[56,475,476,479,480,483],{},[25,477,478],{},"char* argv[]"," 也可以写成 ",[25,481,482],{},"char** argv","，两者在这里表达的含义相同。",[21,485,486],{},"示例：",[33,488,490],{"className":145,"code":489,"language":147,"meta":39,"style":39},"#include \u003Ciostream>\n\nusing namespace std;\n\nint main(int argc, char* argv[])\n{\n    \u002F\u002F 程序从 main 函数开始执行，argc\u002Fargv 用来接收命令行参数。\n\n    cout \u003C\u003C \"argc = \" \u003C\u003C argc \u003C\u003C endl;\n\n    for (int i = 0; i \u003C argc; i++) {\n        cout \u003C\u003C \"argv[\" \u003C\u003C i \u003C\u003C \"] = \" \u003C\u003C argv[i] \u003C\u003C endl;\n    }\n\n    \u002F\u002F 返回 0 表示程序正常结束。\n    return 0;\n}\n",[25,491,492,498,502,512,516,536,540,544,548,566,570,603,631,637,642,647,656],{"__ignoreMap":39},[94,493,494,496],{"class":96,"line":97},[94,495,155],{"class":154},[94,497,158],{"class":111},[94,499,500],{"class":96,"line":115},[94,501,164],{"emptyLinePlaceholder":163},[94,503,504,506,508,510],{"class":96,"line":167},[94,505,170],{"class":154},[94,507,173],{"class":154},[94,509,176],{"class":100},[94,511,180],{"class":179},[94,513,514],{"class":96,"line":183},[94,515,164],{"emptyLinePlaceholder":163},[94,517,518,520,522,524,526,528,530,532,534],{"class":96,"line":188},[94,519,191],{"class":154},[94,521,194],{"class":100},[94,523,400],{"class":179},[94,525,191],{"class":154},[94,527,406],{"class":405},[94,529,409],{"class":179},[94,531,412],{"class":154},[94,533,415],{"class":405},[94,535,418],{"class":179},[94,537,538],{"class":96,"line":200},[94,539,203],{"class":179},[94,541,542],{"class":96,"line":206},[94,543,427],{"class":209},[94,545,546],{"class":96,"line":213},[94,547,164],{"emptyLinePlaceholder":163},[94,549,550,552,554,557,559,562,564],{"class":96,"line":231},[94,551,216],{"class":179},[94,553,219],{"class":154},[94,555,556],{"class":111}," \"argc = \"",[94,558,225],{"class":154},[94,560,561],{"class":179}," argc ",[94,563,219],{"class":154},[94,565,228],{"class":179},[94,567,568],{"class":96,"line":236},[94,569,164],{"emptyLinePlaceholder":163},[94,571,572,575,578,580,583,586,588,591,594,597,600],{"class":96,"line":242},[94,573,574],{"class":154},"    for",[94,576,577],{"class":179}," (",[94,579,191],{"class":154},[94,581,582],{"class":179}," i ",[94,584,585],{"class":154},"=",[94,587,248],{"class":104},[94,589,590],{"class":179},"; i ",[94,592,593],{"class":154},"\u003C",[94,595,596],{"class":179}," argc; i",[94,598,599],{"class":154},"++",[94,601,602],{"class":179},") {\n",[94,604,605,608,610,613,615,617,619,622,624,627,629],{"class":96,"line":253},[94,606,607],{"class":179},"        cout ",[94,609,219],{"class":154},[94,611,612],{"class":111}," \"argv[\"",[94,614,225],{"class":154},[94,616,582],{"class":179},[94,618,219],{"class":154},[94,620,621],{"class":111}," \"] = \"",[94,623,225],{"class":154},[94,625,626],{"class":179}," argv[i] ",[94,628,219],{"class":154},[94,630,228],{"class":179},[94,632,634],{"class":96,"line":633},13,[94,635,636],{"class":179},"    }\n",[94,638,640],{"class":96,"line":639},14,[94,641,164],{"emptyLinePlaceholder":163},[94,643,645],{"class":96,"line":644},15,[94,646,239],{"class":209},[94,648,650,652,654],{"class":96,"line":649},16,[94,651,245],{"class":154},[94,653,248],{"class":104},[94,655,180],{"class":179},[94,657,659],{"class":96,"line":658},17,[94,660,256],{"class":179},[21,662,663,666,667,669,670,672,673,675],{},[260,664,665],{},"运行结果","：见下方“运行结果”；",[25,668,468],{}," 会随启动方式不同而变化，重点观察 ",[25,671,458],{}," 和各个 ",[25,674,464],{}," 的对应关系。",[21,677,678],{},"构建并传入命令行参数运行：",[33,680,682],{"className":88,"code":681,"language":90,"meta":39,"style":39},"cmake --build --preset linux-debug\n.\u002Fbuild\u002Flinux-debug\u002Fsrc\u002Fcmake_template hello 123\n",[25,683,684,694],{"__ignoreMap":39},[94,685,686,688,690,692],{"class":96,"line":97},[94,687,101],{"class":100},[94,689,105],{"class":104},[94,691,108],{"class":104},[94,693,112],{"class":111},[94,695,696,699,702],{"class":96,"line":115},[94,697,698],{"class":100},".\u002Fbuild\u002Flinux-debug\u002Fsrc\u002Fcmake_template",[94,700,701],{"class":111}," hello",[94,703,704],{"class":104}," 123\n",[21,706,707,709],{},[260,708,665],{},"：",[33,711,714],{"className":712,"code":713,"language":38,"meta":39},[36],"argc = 3\nargv[0] = .\u002Fbuild\u002Flinux-debug\u002Fsrc\u002Fcmake_template\nargv[1] = hello\nargv[2] = 123\n",[25,715,713],{"__ignoreMap":39},[717,718,719],"blockquote",{},[21,720,721,722,724,725,727,728,730],{},"注意：",[25,723,468],{}," 的具体内容和启动方式有关，可能是 ",[25,726,698],{},"，也可能是完整路径。实际处理参数时，通常从 ",[25,729,472],{}," 开始读取用户输入的内容。",[17,732,733],{"id":733},"注释",[21,735,736,739],{},[260,737,738],{},"作用","：在代码中加一些说明和解释，方便自己或其他程序员程序员阅读代码",[21,741,742],{},[260,743,744],{},"两种格式",[53,746,747,760],{},[56,748,749,709,752,755],{},[260,750,751],{},"单行注释",[25,753,754],{},"\u002F\u002F 描述信息",[452,756,757],{},[56,758,759],{},"通常放在一行代码的上方，或者一条语句的末尾，==对该行代码说明==",[56,761,762,765,766,769],{},[260,763,764],{},"多行注释","： ",[25,767,768],{},"\u002F* 描述信息 *\u002F",[452,770,771],{},[56,772,773],{},"通常放在一段代码的上方，==对该段代码做整体说明==",[717,775,776],{},[21,777,778],{},"提示：编译器在编译代码时，会忽略注释的内容",[17,780,781],{"id":781},"变量",[21,783,784,786],{},[260,785,738],{},"：给一段指定的内存空间起名，方便操作这段内存",[21,788,789,709,792],{},[260,790,791],{},"语法",[25,793,794],{},"数据类型 变量名 = 初始值;",[21,796,797],{},[260,798,486],{},[33,800,802],{"className":145,"code":801,"language":147,"meta":39,"style":39},"#include\u003Ciostream>\nusing namespace std;\n\nint main() {\n\n    \u002F\u002F变量的定义\n    \u002F\u002F语法：数据类型  变量名 = 初始值\n\n    int a = 10;\n\n    cout \u003C\u003C \"a = \" \u003C\u003C a \u003C\u003C endl;\n    \n\n    return 0;\n}\n",[25,803,804,811,821,825,834,838,843,848,852,867,871,888,893,897,905],{"__ignoreMap":39},[94,805,806,808],{"class":96,"line":97},[94,807,155],{"class":154},[94,809,810],{"class":111},"\u003Ciostream>\n",[94,812,813,815,817,819],{"class":96,"line":115},[94,814,170],{"class":154},[94,816,173],{"class":154},[94,818,176],{"class":100},[94,820,180],{"class":179},[94,822,823],{"class":96,"line":167},[94,824,164],{"emptyLinePlaceholder":163},[94,826,827,829,831],{"class":96,"line":183},[94,828,191],{"class":154},[94,830,194],{"class":100},[94,832,833],{"class":179},"() {\n",[94,835,836],{"class":96,"line":188},[94,837,164],{"emptyLinePlaceholder":163},[94,839,840],{"class":96,"line":200},[94,841,842],{"class":209},"    \u002F\u002F变量的定义\n",[94,844,845],{"class":96,"line":206},[94,846,847],{"class":209},"    \u002F\u002F语法：数据类型  变量名 = 初始值\n",[94,849,850],{"class":96,"line":213},[94,851,164],{"emptyLinePlaceholder":163},[94,853,854,857,860,862,865],{"class":96,"line":231},[94,855,856],{"class":154},"    int",[94,858,859],{"class":179}," a ",[94,861,585],{"class":154},[94,863,864],{"class":104}," 10",[94,866,180],{"class":179},[94,868,869],{"class":96,"line":236},[94,870,164],{"emptyLinePlaceholder":163},[94,872,873,875,877,880,882,884,886],{"class":96,"line":242},[94,874,216],{"class":179},[94,876,219],{"class":154},[94,878,879],{"class":111}," \"a = \"",[94,881,225],{"class":154},[94,883,859],{"class":179},[94,885,219],{"class":154},[94,887,228],{"class":179},[94,889,890],{"class":96,"line":253},[94,891,892],{"class":179},"    \n",[94,894,895],{"class":96,"line":633},[94,896,164],{"emptyLinePlaceholder":163},[94,898,899,901,903],{"class":96,"line":639},[94,900,245],{"class":154},[94,902,248],{"class":104},[94,904,180],{"class":179},[94,906,907],{"class":96,"line":644},[94,908,256],{"class":179},[21,910,911],{},[260,912,262],{},[33,914,917],{"className":915,"code":916,"language":38,"meta":39},[36],"a = 10\n",[25,918,916],{"__ignoreMap":39},[717,920,921],{},[21,922,923],{},"注意：C++在创建变量时，必须给变量一个初始值，否则会报错",[17,925,926],{"id":926},"常量",[21,928,929,931],{},[260,930,738],{},"：用于记录程序中不可更改的数据",[21,933,934],{},"C++定义常量两种方式",[53,936,937,951],{},[56,938,939,942,943,946],{},[260,940,941],{},"#define"," 宏常量： ",[25,944,945],{},"#define 常量名 常量值",[452,947,948],{},[56,949,950],{},"==通常在文件上方定义==，表示一个常量",[56,952,953,956,957,960],{},[260,954,955],{},"const","修饰的变量 ",[25,958,959],{},"const 数据类型 常量名 = 常量值",[452,961,962],{},[56,963,964],{},"==通常在变量定义前加关键字const==，修饰该变量为常量，不可修改",[21,966,967],{},[260,968,486],{},[33,970,972],{"className":145,"code":971,"language":147,"meta":39,"style":39},"\u002F\u002F1、宏常量\n#define day 7\n\nint main() {\n\n    cout \u003C\u003C \"一周里总共有 \" \u003C\u003C day \u003C\u003C \" 天\" \u003C\u003C endl;\n    \u002F\u002Fday = 8;  \u002F\u002F报错，宏常量不可以修改\n\n    \u002F\u002F2、const修饰变量\n    const int month = 12;\n    cout \u003C\u003C \"一年里总共有 \" \u003C\u003C month \u003C\u003C \" 个月份\" \u003C\u003C endl;\n    \u002F\u002Fmonth = 24; \u002F\u002F报错，常量是不可以修改的\n    \n    \n\n    return 0;\n}\n",[25,973,974,979,989,993,1001,1005,1028,1036,1040,1045,1063,1085,1093,1097,1101,1105,1113],{"__ignoreMap":39},[94,975,976],{"class":96,"line":97},[94,977,978],{"class":209},"\u002F\u002F1、宏常量\n",[94,980,981,983,986],{"class":96,"line":115},[94,982,941],{"class":154},[94,984,985],{"class":100}," day",[94,987,988],{"class":104}," 7\n",[94,990,991],{"class":96,"line":167},[94,992,164],{"emptyLinePlaceholder":163},[94,994,995,997,999],{"class":96,"line":183},[94,996,191],{"class":154},[94,998,194],{"class":100},[94,1000,833],{"class":179},[94,1002,1003],{"class":96,"line":188},[94,1004,164],{"emptyLinePlaceholder":163},[94,1006,1007,1009,1011,1014,1016,1019,1021,1024,1026],{"class":96,"line":200},[94,1008,216],{"class":179},[94,1010,219],{"class":154},[94,1012,1013],{"class":111}," \"一周里总共有 \"",[94,1015,225],{"class":154},[94,1017,1018],{"class":179}," day ",[94,1020,219],{"class":154},[94,1022,1023],{"class":111}," \" 天\"",[94,1025,225],{"class":154},[94,1027,228],{"class":179},[94,1029,1030,1033],{"class":96,"line":206},[94,1031,1032],{"class":209},"    \u002F\u002Fday = 8;",[94,1034,1035],{"class":209},"  \u002F\u002F报错，宏常量不可以修改\n",[94,1037,1038],{"class":96,"line":213},[94,1039,164],{"emptyLinePlaceholder":163},[94,1041,1042],{"class":96,"line":231},[94,1043,1044],{"class":209},"    \u002F\u002F2、const修饰变量\n",[94,1046,1047,1050,1053,1056,1058,1061],{"class":96,"line":236},[94,1048,1049],{"class":154},"    const",[94,1051,1052],{"class":154}," int",[94,1054,1055],{"class":179}," month ",[94,1057,585],{"class":154},[94,1059,1060],{"class":104}," 12",[94,1062,180],{"class":179},[94,1064,1065,1067,1069,1072,1074,1076,1078,1081,1083],{"class":96,"line":242},[94,1066,216],{"class":179},[94,1068,219],{"class":154},[94,1070,1071],{"class":111}," \"一年里总共有 \"",[94,1073,225],{"class":154},[94,1075,1055],{"class":179},[94,1077,219],{"class":154},[94,1079,1080],{"class":111}," \" 个月份\"",[94,1082,225],{"class":154},[94,1084,228],{"class":179},[94,1086,1087,1090],{"class":96,"line":253},[94,1088,1089],{"class":209},"    \u002F\u002Fmonth = 24;",[94,1091,1092],{"class":209}," \u002F\u002F报错，常量是不可以修改的\n",[94,1094,1095],{"class":96,"line":633},[94,1096,892],{"class":179},[94,1098,1099],{"class":96,"line":639},[94,1100,892],{"class":179},[94,1102,1103],{"class":96,"line":644},[94,1104,164],{"emptyLinePlaceholder":163},[94,1106,1107,1109,1111],{"class":96,"line":649},[94,1108,245],{"class":154},[94,1110,248],{"class":104},[94,1112,180],{"class":179},[94,1114,1115],{"class":96,"line":658},[94,1116,256],{"class":179},[21,1118,1119],{},[260,1120,262],{},[33,1122,1125],{"className":1123,"code":1124,"language":38,"meta":39},[36],"一周里总共有 7 天\n一年里总共有 12 个月份\n",[25,1126,1124],{"__ignoreMap":39},[17,1128,1129],{"id":1129},"关键字",[21,1131,1132],{},"**作用：**关键字是C++中预先保留的单词（标识符）",[452,1134,1135],{},[56,1136,1137],{},[260,1138,1139],{},"在定义变量或者常量时候，不要用关键字",[21,1141,1142],{},"C++关键字如下：",[1144,1145,1146,1168],"table",{},[1147,1148,1149],"thead",{},[1150,1151,1152,1156,1159,1162,1165],"tr",{},[1153,1154,1155],"th",{},"asm",[1153,1157,1158],{},"do",[1153,1160,1161],{},"if",[1153,1163,1164],{},"return",[1153,1166,1167],{},"typedef",[1169,1170,1171,1189,1205,1222,1239,1255,1272,1289,1305,1322,1339,1355],"tbody",{},[1150,1172,1173,1177,1180,1183,1186],{},[1174,1175,1176],"td",{},"auto",[1174,1178,1179],{},"double",[1174,1181,1182],{},"inline",[1174,1184,1185],{},"short",[1174,1187,1188],{},"typeid",[1150,1190,1191,1194,1197,1199,1202],{},[1174,1192,1193],{},"bool",[1174,1195,1196],{},"dynamic_cast",[1174,1198,191],{},[1174,1200,1201],{},"signed",[1174,1203,1204],{},"typename",[1150,1206,1207,1210,1213,1216,1219],{},[1174,1208,1209],{},"break",[1174,1211,1212],{},"else",[1174,1214,1215],{},"long",[1174,1217,1218],{},"sizeof",[1174,1220,1221],{},"union",[1150,1223,1224,1227,1230,1233,1236],{},[1174,1225,1226],{},"case",[1174,1228,1229],{},"enum",[1174,1231,1232],{},"mutable",[1174,1234,1235],{},"static",[1174,1237,1238],{},"unsigned",[1150,1240,1241,1244,1247,1250,1253],{},[1174,1242,1243],{},"catch",[1174,1245,1246],{},"explicit",[1174,1248,1249],{},"namespace",[1174,1251,1252],{},"static_cast",[1174,1254,170],{},[1150,1256,1257,1260,1263,1266,1269],{},[1174,1258,1259],{},"char",[1174,1261,1262],{},"export",[1174,1264,1265],{},"new",[1174,1267,1268],{},"struct",[1174,1270,1271],{},"virtual",[1150,1273,1274,1277,1280,1283,1286],{},[1174,1275,1276],{},"class",[1174,1278,1279],{},"extern",[1174,1281,1282],{},"operator",[1174,1284,1285],{},"switch",[1174,1287,1288],{},"void",[1150,1290,1291,1293,1296,1299,1302],{},[1174,1292,955],{},[1174,1294,1295],{},"false",[1174,1297,1298],{},"private",[1174,1300,1301],{},"template",[1174,1303,1304],{},"volatile",[1150,1306,1307,1310,1313,1316,1319],{},[1174,1308,1309],{},"const_cast",[1174,1311,1312],{},"float",[1174,1314,1315],{},"protected",[1174,1317,1318],{},"this",[1174,1320,1321],{},"wchar_t",[1150,1323,1324,1327,1330,1333,1336],{},[1174,1325,1326],{},"continue",[1174,1328,1329],{},"for",[1174,1331,1332],{},"public",[1174,1334,1335],{},"throw",[1174,1337,1338],{},"while",[1150,1340,1341,1344,1347,1350,1353],{},[1174,1342,1343],{},"default",[1174,1345,1346],{},"friend",[1174,1348,1349],{},"register",[1174,1351,1352],{},"true",[1174,1354],{},[1150,1356,1357,1360,1363,1366,1369],{},[1174,1358,1359],{},"delete",[1174,1361,1362],{},"goto",[1174,1364,1365],{},"reinterpret_cast",[1174,1367,1368],{},"try",[1174,1370],{},[21,1372,1373],{},[25,1374,1375],{},"提示：在给变量或者常量起名称时候，不要用C++得关键字，否则会产生歧义。",[17,1377,1378],{"id":1378},"标识符命名规则",[21,1380,1381,1383],{},[260,1382,738],{},"：C++规定给标识符（变量、常量）命名时，有一套自己的规则",[452,1385,1386,1389,1392,1395],{},[56,1387,1388],{},"标识符不能是关键字",[56,1390,1391],{},"标识符只能由字母、数字、下划线组成",[56,1393,1394],{},"第一个字符必须为字母或下划线",[56,1396,1397],{},"标识符中字母区分大小写",[717,1399,1400],{},[21,1401,1402],{},"建议：给标识符命名时，争取做到见名知意的效果，方便自己和他人的阅读",[12,1404,1406],{"id":1405},"c-与-c-的关系和学习路线","C 与 C++ 的关系和学习路线",[17,1408,1410],{"id":1409},"c-和-c-是什么","C 和 C++ 是什么",[21,1412,1413],{},"C 和 C++ 都是通用的编译型程序设计语言。除此之外，常见的编程语言\n还有 Python、Rust、Go、C#（读作 C Sharp）、Java 和 JavaScript 等；\nShell 则主要用于编写命令行和系统管理脚本。",[21,1415,1416],{},"C++ 最初由 C 语言发展而来，因此两者在基本语法、运算符、流程控制、\n函数和指针等方面有很多相似之处。在一些同时涉及两者的技术资料、工具链\n和岗位描述中，人们常用“C\u002FC++”作为合称。",[21,1418,1419],{},"但是，C 和 C++ 现在是两门分别制定标准、分别发展的语言，不能简单理解\n为同一门语言的两个版本：",[53,1421,1422,1425,1428],{},[56,1423,1424],{},"C++ 不是“完全兼容 C”。大部分简单的 C 代码可以较容易地迁移到\nC++，但仍有一些合法的 C 代码不能直接作为 C++ 编译。",[56,1426,1427],{},"C++ 不只是“带有类的 C”。现代 C++ 还包括模板、RAII、异常、\nLambda、智能指针、并发支持和丰富的标准库。",[56,1429,1430],{},"C 也不是已经被 C++ 淘汰的旧语言。操作系统、嵌入式开发、驱动、\n底层库和跨语言接口中仍然大量使用 C。",[21,1432,1433],{},"因此，C 和 C++ 既有共同基础，也有各自适合的编程方式。学习其中一门\n确实能帮助理解另一门，但写 C++ 时不应只是照搬 C 风格的代码。",[1144,1435,1436,1450],{},[1147,1437,1438],{},[1150,1439,1440,1444,1447],{},[1153,1441,1443],{"align":1442},"left","特性",[1153,1445,1446],{"align":1442},"C 语言",[1153,1448,1449],{"align":1442},"C++ 语言",[1169,1451,1452,1463,1474,1485,1496,1507,1518,1529],{},[1150,1453,1454,1457,1460],{},[1174,1455,1456],{"align":1442},"语言定位",[1174,1458,1459],{"align":1442},"小而精简，强调直接表达底层操作",[1174,1461,1462],{"align":1442},"功能更丰富，支持从底层到高层抽象",[1150,1464,1465,1468,1471],{},[1174,1466,1467],{"align":1442},"编程范式",[1174,1469,1470],{"align":1442},"主要采用过程式编程",[1174,1472,1473],{"align":1442},"多范式：过程式、面向对象、泛型、函数式等",[1150,1475,1476,1479,1482],{},[1174,1477,1478],{"align":1442},"资源管理",[1174,1480,1481],{"align":1442},"通常手动申请和释放资源",[1174,1483,1484],{"align":1442},"支持手动管理，更推荐使用 RAII 和智能指针",[1150,1486,1487,1490,1493],{},[1174,1488,1489],{"align":1442},"抽象与复用",[1174,1491,1492],{"align":1442},"函数、结构体、宏和模块化文件",[1174,1494,1495],{"align":1442},"函数、类、模板、泛型算法和标准库",[1150,1497,1498,1501,1504],{},[1174,1499,1500],{"align":1442},"标准库",[1174,1502,1503],{"align":1442},"C 标准库",[1174,1505,1506],{"align":1442},"C++ 标准库，也提供对大部分 C 标准库功能的支持",[1150,1508,1509,1512,1515],{},[1174,1510,1511],{"align":1442},"类型系统",[1174,1513,1514],{"align":1442},"相对简单，部分隐式转换较宽松",[1174,1516,1517],{"align":1442},"类型系统更丰富，通常提供更严格的检查",[1150,1519,1520,1523,1526],{},[1174,1521,1522],{"align":1442},"运行效率",[1174,1524,1525],{"align":1442},"适合高性能和底层开发",[1174,1527,1528],{"align":1442},"同样适合高性能开发，合理抽象通常不会带来额外开销",[1150,1530,1531,1534,1537],{},[1174,1532,1533],{"align":1442},"常见场景",[1174,1535,1536],{"align":1442},"嵌入式、操作系统、驱动、底层库",[1174,1538,1539],{"align":1442},"游戏、图形、机器人、桌面软件、基础设施和高性能计算",[21,1541,1542],{},"表格中的应用场景不是硬性边界。例如，嵌入式系统也可以使用 C++，大型\n应用也可能包含 C 模块。最终选择哪门语言，要看项目需求、运行环境、\n现有生态和团队经验。",[17,1544,1546],{"id":1545},"应该先学-c还是直接学-c","应该先学 C，还是直接学 C++",[21,1548,1549],{},"学习 C++ 并不要求先完整学完 C。对于本教程的读者，推荐直接按照 C++\n路线学习：",[53,1551,1552,1555,1558,1569,1572],{},[56,1553,1554],{},"先掌握变量、分支、循环、函数、数组和基本输入输出。",[56,1556,1557],{},"再学习引用、指针、结构体、类和对象。",[56,1559,1560,1561,1564,1565,1568],{},"接着学习 ",[25,1562,1563],{},"std::string","、",[25,1566,1567],{},"std::vector","、迭代器和常用算法。",[56,1570,1571],{},"然后理解 RAII、智能指针、模板、Lambda 和异常处理。",[56,1573,1574],{},"最后结合 CMake、调试器、单元测试和第三方库完成真实工程。",[21,1576,1577],{},"如果以后需要进行嵌入式、操作系统、驱动或纯 C 项目开发，再系统补充 C\n语言中的数组与指针、内存布局、结构体、预处理器和手动资源管理会更有\n针对性。",[717,1579,1580],{},[21,1581,1582],{},"本教程以 C++ 为主。遇到与 C 语言共通的语法时会顺带说明，但示例会\n尽量采用适合现代 C++ 的写法，而不是把 C++ 当作 C 语言的简单扩展。",[17,1584,1585],{"id":1585},"补充学习资料",[21,1587,1588],{},"本教程主要负责梳理知识点、工程环境和实践中容易遇到的问题。初学者也\n可以结合以下视频或文档学习：",[53,1590,1591,1599,1606,1613],{},[56,1592,1593],{},[123,1594,1598],{"href":1595,"rel":1596},"https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002FBV1et411b73Z",[1597],"nofollow","C++ 视频教程",[56,1600,1601],{},[123,1602,1605],{"href":1603,"rel":1604},"https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002FBV1cq4y1U7sg",[1597],"鹏哥 C 语言视频",[56,1607,1608],{},[123,1609,1612],{"href":1610,"rel":1611},"https:\u002F\u002Fwww.runoob.com\u002Fcprogramming\u002Fc-tutorial.html",[1597],"菜鸟教程：C 语言教程",[56,1614,1615],{},[123,1616,1619],{"href":1617,"rel":1618},"https:\u002F\u002Fwww.runoob.com\u002Fcplusplus\u002Fcpp-tutorial.html",[1597],"菜鸟教程：C++ 教程",[21,1621,1622],{},"不同资料采用的 C++ 标准和代码风格可能不同。学习语法时可以参考多个\n来源，但在本教程的工程中，以当前章节给出的 C++ 写法和 CMake 配置为准。",[1624,1625,1626],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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);}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":39,"searchDepth":115,"depth":115,"links":1628},[1629,1639],{"id":14,"depth":115,"text":15,"children":1630},[1631,1632,1633,1634,1635,1636,1637,1638],{"id":19,"depth":167,"text":19},{"id":130,"depth":167,"text":131},{"id":338,"depth":167,"text":338},{"id":733,"depth":167,"text":733},{"id":781,"depth":167,"text":781},{"id":926,"depth":167,"text":926},{"id":1129,"depth":167,"text":1129},{"id":1378,"depth":167,"text":1378},{"id":1405,"depth":115,"text":1406,"children":1640},[1641,1642,1643],{"id":1409,"depth":167,"text":1410},{"id":1545,"depth":167,"text":1546},{"id":1585,"depth":167,"text":1585},0,"0200","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\u002F0200-c-ji-chu-chu-shi",{"title":5,"description":39},"wiki\u002F2023-10-05-Cplusplus教学\u002F0200-C++基础初识","lqjuCxvgI01pWtlpWhyWpAztaFI4E8ebhwNfopxKY9k",[1658,1663,1665,1671,1677,1683,1689,1695,1701,1707,1713,1719,1725,1731,1737,1743,1749,1755,1761,1767,1773,1779,1785,1791,1797,1803,1809,1815,1821,1827,1833,1839,1845,1851,1857,1863,1869,1875,1881,1887,1892,1898,1903,1909,1915,1921,1927,1933,1939,1945,1951,1957,1963,1969,1975,1981,1987,1993,1999,2005,2011,2017,2023,2029,2035,2041,2047,2053,2059,2065,2071,2077,2083,2089,2095,2101,2107,2113,2119,2125,2131,2137,2143,2149,2155,2161,2167,2173,2179,2185,2191,2197],{"path":125,"stem":1659,"title":1660,"authors":1661,"date":1646,"chapterOrder":1662,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"wiki\u002F2023-10-05-Cplusplus教学\u002F0100-C++开发环境搭建与测试","C++开发环境搭建与测试",[7],"0100",{"path":1653,"stem":1655,"title":5,"authors":1664,"date":1646,"chapterOrder":1645,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},[7],{"path":1666,"stem":1667,"title":1668,"authors":1669,"date":1646,"chapterOrder":1670,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1672,"stem":1673,"title":1674,"authors":1675,"date":1646,"chapterOrder":1676,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0400-shu-ru-shu-chu","wiki\u002F2023-10-05-Cplusplus教学\u002F0400-输入输出","输入输出",[7],"0400",{"path":1678,"stem":1679,"title":1680,"authors":1681,"date":1646,"chapterOrder":1682,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0500-yun-suan-fu","wiki\u002F2023-10-05-Cplusplus教学\u002F0500-运算符","运算符",[7],"0500",{"path":1684,"stem":1685,"title":1686,"authors":1687,"date":1646,"chapterOrder":1688,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0600-cheng-xu-liu-cheng-jie-gou","wiki\u002F2023-10-05-Cplusplus教学\u002F0600-程序流程结构","程序流程结构",[7],"0600",{"path":1690,"stem":1691,"title":1692,"authors":1693,"date":1646,"chapterOrder":1694,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0700-shu-zu","wiki\u002F2023-10-05-Cplusplus教学\u002F0700-数组","数组",[7],"0700",{"path":1696,"stem":1697,"title":1698,"authors":1699,"date":1646,"chapterOrder":1700,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0800-han-shu-yu-tou-wen-jian","wiki\u002F2023-10-05-Cplusplus教学\u002F0800-函数与头文件","函数与头文件",[7],"0800",{"path":1702,"stem":1703,"title":1704,"authors":1705,"date":1646,"chapterOrder":1706,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0900-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F0900-指针","指针",[7],"0900",{"path":1708,"stem":1709,"title":1710,"authors":1711,"date":1646,"chapterOrder":1712,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1000-jie-gou-ti-yu-gong-yong-ti","wiki\u002F2023-10-05-Cplusplus教学\u002F1000-结构体与共用体","结构体与共用体",[7],"1000",{"path":1714,"stem":1715,"title":1716,"authors":1717,"date":1646,"chapterOrder":1718,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1720,"stem":1721,"title":1722,"authors":1723,"date":1646,"chapterOrder":1724,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1200-yin-yong","wiki\u002F2023-10-05-Cplusplus教学\u002F1200-引用","引用",[7],"1200",{"path":1726,"stem":1727,"title":1728,"authors":1729,"date":1646,"chapterOrder":1730,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao","wiki\u002F2023-10-05-Cplusplus教学\u002F1300-函数提高","函数提高",[7],"1300",{"path":1732,"stem":1733,"title":1734,"authors":1735,"date":1646,"chapterOrder":1736,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1350-ming-ming-kong-jian","wiki\u002F2023-10-05-Cplusplus教学\u002F1350-命名空间","命名空间",[7],"1350",{"path":1738,"stem":1739,"title":1740,"authors":1741,"date":1646,"chapterOrder":1742,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0100-feng-zhuang","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0100-封装","封装",[7],"1400-0100",{"path":1744,"stem":1745,"title":1746,"authors":1747,"date":1646,"chapterOrder":1748,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1750,"stem":1751,"title":1752,"authors":1753,"date":1646,"chapterOrder":1754,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1756,"stem":1757,"title":1758,"authors":1759,"date":1646,"chapterOrder":1760,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1762,"stem":1763,"title":1764,"authors":1765,"date":1646,"chapterOrder":1766,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0500-ji-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0500-继承","继承",[7],"1400-0500",{"path":1768,"stem":1769,"title":1770,"authors":1771,"date":1646,"chapterOrder":1772,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0600-duo-tai","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0600-多态","多态",[7],"1400-0600",{"path":1774,"stem":1775,"title":1776,"authors":1777,"date":1646,"chapterOrder":1778,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-lei-he-dui-xiang","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-类和对象","类和对象",[7],"1400",{"path":1780,"stem":1781,"title":1782,"authors":1783,"date":1646,"chapterOrder":1784,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1450-han-shu-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F1450-函数指针","函数指针",[7],"1450",{"path":1786,"stem":1787,"title":1788,"authors":1789,"date":1646,"chapterOrder":1790,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1500-wen-jian-cao-zuo","wiki\u002F2023-10-05-Cplusplus教学\u002F1500-文件操作","文件操作",[7],"1500",{"path":1792,"stem":1793,"title":1794,"authors":1795,"date":1646,"chapterOrder":1796,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1798,"stem":1799,"title":1800,"authors":1801,"date":1646,"chapterOrder":1802,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1700-mu-ban","wiki\u002F2023-10-05-Cplusplus教学\u002F1700-模板","模板",[7],"1700",{"path":1804,"stem":1805,"title":1806,"authors":1807,"date":1646,"chapterOrder":1808,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1810,"stem":1811,"title":1812,"authors":1813,"date":1646,"chapterOrder":1814,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1816,"stem":1817,"title":1818,"authors":1819,"date":1646,"chapterOrder":1820,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1822,"stem":1823,"title":1824,"authors":1825,"date":1646,"chapterOrder":1826,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1828,"stem":1829,"title":1830,"authors":1831,"date":1646,"chapterOrder":1832,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1834,"stem":1835,"title":1836,"authors":1837,"date":1646,"chapterOrder":1838,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1840,"stem":1841,"title":1842,"authors":1843,"date":1646,"chapterOrder":1844,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1846,"stem":1847,"title":1848,"authors":1849,"date":1646,"chapterOrder":1850,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1852,"stem":1853,"title":1854,"authors":1855,"date":1646,"chapterOrder":1856,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1858,"stem":1859,"title":1860,"authors":1861,"date":1646,"chapterOrder":1862,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1864,"stem":1865,"title":1866,"authors":1867,"date":1646,"chapterOrder":1868,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1870,"stem":1871,"title":1872,"authors":1873,"date":1646,"chapterOrder":1874,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-1200-chang-yong-suan-fa","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-1200-常用算法","常用算法",[7],"1800-1200",{"path":1876,"stem":1877,"title":1878,"authors":1879,"date":1646,"chapterOrder":1880,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-stl-ti-gao-bian-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-STL提高编程","STL提高编程",[7],"1800",{"path":1882,"stem":1883,"title":1884,"authors":1885,"date":1646,"chapterOrder":1886,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1900-c-lei-xing-zhuan-huan","wiki\u002F2023-10-05-Cplusplus教学\u002F1900-C++类型转换","C++类型转换",[7],"1900",{"path":1888,"stem":1889,"title":1176,"authors":1890,"date":1646,"chapterOrder":1891,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0100-auto","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0100-auto",[7],"2000-0100",{"path":1893,"stem":1894,"title":1895,"authors":1896,"date":1646,"chapterOrder":1897,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0200-nullptr","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0200-nullptr","nullptr",[7],"2000-0200",{"path":1899,"stem":1900,"title":170,"authors":1901,"date":1646,"chapterOrder":1902,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0300-using","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0300-using",[7],"2000-0300",{"path":1904,"stem":1905,"title":1906,"authors":1907,"date":1646,"chapterOrder":1908,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1910,"stem":1911,"title":1912,"authors":1913,"date":1646,"chapterOrder":1914,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1916,"stem":1917,"title":1918,"authors":1919,"date":1646,"chapterOrder":1920,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1922,"stem":1923,"title":1924,"authors":1925,"date":1646,"chapterOrder":1926,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0700-constexpr","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0700-constexpr","constexpr",[7],"2000-0700",{"path":1928,"stem":1929,"title":1930,"authors":1931,"date":1646,"chapterOrder":1932,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0800-raii","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0800-RAII","RAII",[7],"2000-0800",{"path":1934,"stem":1935,"title":1936,"authors":1937,"date":1646,"chapterOrder":1938,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0900-zhi-neng-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0900-智能指针","智能指针",[7],"2000-0900",{"path":1940,"stem":1941,"title":1942,"authors":1943,"date":1646,"chapterOrder":1944,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1946,"stem":1947,"title":1948,"authors":1949,"date":1646,"chapterOrder":1950,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1952,"stem":1953,"title":1954,"authors":1955,"date":1646,"chapterOrder":1956,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1958,"stem":1959,"title":1960,"authors":1961,"date":1646,"chapterOrder":1962,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1964,"stem":1965,"title":1966,"authors":1967,"date":1646,"chapterOrder":1968,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1970,"stem":1971,"title":1972,"authors":1973,"date":1646,"chapterOrder":1974,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1976,"stem":1977,"title":1978,"authors":1979,"date":1646,"chapterOrder":1980,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1982,"stem":1983,"title":1984,"authors":1985,"date":1646,"chapterOrder":1986,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1988,"stem":1989,"title":1990,"authors":1991,"date":1646,"chapterOrder":1992,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":1994,"stem":1995,"title":1996,"authors":1997,"date":1646,"chapterOrder":1998,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2000,"stem":2001,"title":2002,"authors":2003,"date":1646,"chapterOrder":2004,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2006,"stem":2007,"title":2008,"authors":2009,"date":1646,"chapterOrder":2010,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2012,"stem":2013,"title":2014,"authors":2015,"date":1646,"chapterOrder":2016,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2018,"stem":2019,"title":2020,"authors":2021,"date":1646,"chapterOrder":2022,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2024,"stem":2025,"title":2026,"authors":2027,"date":1646,"chapterOrder":2028,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2030,"stem":2031,"title":2032,"authors":2033,"date":1646,"chapterOrder":2034,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2036,"stem":2037,"title":2038,"authors":2039,"date":1646,"chapterOrder":2040,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2042,"stem":2043,"title":2044,"authors":2045,"date":1646,"chapterOrder":2046,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2048,"stem":2049,"title":2050,"authors":2051,"date":1646,"chapterOrder":2052,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2054,"stem":2055,"title":2056,"authors":2057,"date":1646,"chapterOrder":2058,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2060,"stem":2061,"title":2062,"authors":2063,"date":1646,"chapterOrder":2064,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2066,"stem":2067,"title":2068,"authors":2069,"date":1646,"chapterOrder":2070,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2072,"stem":2073,"title":2074,"authors":2075,"date":1646,"chapterOrder":2076,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2078,"stem":2079,"title":2080,"authors":2081,"date":1646,"chapterOrder":2082,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-xian-dai-c","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-现代C++","现代C++",[7],"2000",{"path":2084,"stem":2085,"title":2086,"authors":2087,"date":1646,"chapterOrder":2088,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2090,"stem":2091,"title":2092,"authors":2093,"date":1646,"chapterOrder":2094,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2096,"stem":2097,"title":2098,"authors":2099,"date":1646,"chapterOrder":2100,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2102,"stem":2103,"title":2104,"authors":2105,"date":1646,"chapterOrder":2106,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2108,"stem":2109,"title":2110,"authors":2111,"date":1646,"chapterOrder":2112,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2114,"stem":2115,"title":2116,"authors":2117,"date":1646,"chapterOrder":2118,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2120,"stem":2121,"title":2122,"authors":2123,"date":1646,"chapterOrder":2124,"chapterDepth":115,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2126,"stem":2127,"title":2128,"authors":2129,"date":1646,"chapterOrder":2130,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2132,"stem":2133,"title":2134,"authors":2135,"date":1646,"chapterOrder":2136,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2138,"stem":2139,"title":2140,"authors":2141,"date":1646,"chapterOrder":2142,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2144,"stem":2145,"title":2146,"authors":2147,"date":1646,"chapterOrder":2148,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2150,"stem":2151,"title":2152,"authors":2153,"date":1646,"chapterOrder":2154,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2156,"stem":2157,"title":2158,"authors":2159,"date":1646,"chapterOrder":2160,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-chang-yong-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-常用库","常用库学习",[7],"2100",{"path":2162,"stem":2163,"title":2164,"authors":2165,"date":1646,"chapterOrder":2166,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2168,"stem":2169,"title":2170,"authors":2171,"date":1646,"chapterOrder":2172,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2174,"stem":2175,"title":2176,"authors":2177,"date":1646,"chapterOrder":2178,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2180,"stem":2181,"title":2182,"authors":2183,"date":1646,"chapterOrder":2184,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2186,"stem":2187,"title":2188,"authors":2189,"date":1646,"chapterOrder":2190,"chapterDepth":97,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\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":2192,"stem":2193,"title":2194,"authors":2195,"date":1646,"chapterOrder":2196,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":1651},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-cmake-gong-cheng-mu-ban","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-CMake工程模板","CMake工程模板",[7],"2200",{"path":1648,"stem":2198,"title":2199,"authors":2200,"date":1646,"chapterOrder":2201,"chapterDepth":1644,"docKey":1647,"docRoot":1648,"docTitle":1649,"isWikiDoc":163,"isWikiIndex":163},"wiki\u002F2023-10-05-Cplusplus教学\u002Findex","C\u002FC++教程",[7],null,[2203,2205,2208,2211],{"name":7,"image":2204},"\u002Fimages\u002Fmember_photo\u002F董佳辉.jpg",{"name":2206,"image":2207},"宫金良","\u002Fimages\u002Fmember_photo\u002F宫金良.jpg",{"name":2209,"image":2210},"巩丽","\u002Fimages\u002Fmember_photo\u002F巩丽.png",{"name":2212,"image":2213},"张彦斐","\u002Fimages\u002Fmember_photo\u002F张彦斐.jpg",1792431895981]