[{"data":1,"prerenderedAt":1959},["ShallowReactive",2],{"wiki-page-/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi":3,"wiki-doc-items-/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi":1531,"language-switcher-data-/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi":1943,"wiki-i18n-paths-/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi":1958},{"id":4,"title":5,"body":6,"canonicalPath":1513,"chapter":1514,"chapterSort":1515,"date":1516,"description":51,"docI18nKey":1517,"docKey":1518,"docRoot":1519,"docTitle":1520,"extension":1521,"i18nKey":1522,"isBlogPost":1523,"isWikiDoc":137,"isWikiIndex":1523,"layout":1524,"legacyPath":1525,"locale":1526,"localeSlug":1527,"meta":1528,"navigation":137,"path":1513,"seo":1529,"sourcePath":1525,"sourceStem":1522,"stem":1522,"wikiDepth":59,"__hash__":1530},"content/wiki/2023-10-05-Cplusplus教学/ch1-C++基础初识.md","C++基础初识",{"type":7,"value":8,"toc":1501},"minimark",[9,14,19,23,39,42,45,77,79,86,99,101,214,221,223,230,262,265,273,276,282,321,326,383,388,391,423,426,591,606,609,642,647,653,668,671,677,682,712,717,720,725,733,737,845,849,854,857,862,865,895,899,1049,1053,1056,1059,1066,1069,1297,1302,1305,1310,1324,1329,1333,1338,1341,1344,1347,1442,1448,1458,1463,1469,1474,1480,1485,1491,1497],[10,11,13],"h2",{"id":12},"c初识","C++初识",[15,16,18],"h3",{"id":17},"第一个c程序","第一个C++程序",[20,21,22],"p",{},"在 Linux 下编写一个 C++ 程序，总共分为 4 个步骤",[24,25,26,30,33,36],"ul",{},[27,28,29],"li",{},"创建目录",[27,31,32],{},"创建文件",[27,34,35],{},"编写代码",[27,37,38],{},"编译并运行程序",[40,41,29],"h4",{"id":29},[20,43,44],{},"先创建一个单独的目录，用来存放当前示例：",[46,47,52],"pre",{"className":48,"code":49,"language":50,"meta":51,"style":51},"language-bash shiki shiki-themes github-light github-dark","mkdir hello_cpp\ncd hello_cpp\n","bash","",[53,54,55,68],"code",{"__ignoreMap":51},[56,57,60,64],"span",{"class":58,"line":59},"line",1,[56,61,63],{"class":62},"sScJk","mkdir",[56,65,67],{"class":66},"sZZnC"," hello_cpp\n",[56,69,71,75],{"class":58,"line":70},2,[56,72,74],{"class":73},"sj4cs","cd",[56,76,67],{"class":66},[40,78,32],{"id":32},[20,80,81,82,85],{},"创建一个 ",[53,83,84],{},"main.cpp"," 文件：",[46,87,89],{"className":48,"code":88,"language":50,"meta":51,"style":51},"touch main.cpp\n",[53,90,91],{"__ignoreMap":51},[56,92,93,96],{"class":58,"line":59},[56,94,95],{"class":62},"touch",[56,97,98],{"class":66}," main.cpp\n",[40,100,35],{"id":35},[46,102,106],{"className":103,"code":104,"language":105,"meta":51,"style":51},"language-cpp shiki shiki-themes github-light github-dark","#include\u003Ciostream>\nusing namespace std;\n\nint main() {\n    // 程序从 main 函数开始执行，下面的语句会按顺序运行。\n\n    cout \u003C\u003C \"Hello world\" \u003C\u003C endl;\n\n\n    // 返回 0 表示程序正常结束。\n    return 0;\n}\n","cpp",[53,107,108,117,132,139,151,158,163,181,186,191,197,208],{"__ignoreMap":51},[56,109,110,114],{"class":58,"line":59},[56,111,113],{"class":112},"szBVR","#include",[56,115,116],{"class":66},"\u003Ciostream>\n",[56,118,119,122,125,128],{"class":58,"line":70},[56,120,121],{"class":112},"using",[56,123,124],{"class":112}," namespace",[56,126,127],{"class":62}," std",[56,129,131],{"class":130},"sVt8B",";\n",[56,133,135],{"class":58,"line":134},3,[56,136,138],{"emptyLinePlaceholder":137},true,"\n",[56,140,142,145,148],{"class":58,"line":141},4,[56,143,144],{"class":112},"int",[56,146,147],{"class":62}," main",[56,149,150],{"class":130},"() {\n",[56,152,154],{"class":58,"line":153},5,[56,155,157],{"class":156},"sJ8bj","    // 程序从 main 函数开始执行，下面的语句会按顺序运行。\n",[56,159,161],{"class":58,"line":160},6,[56,162,138],{"emptyLinePlaceholder":137},[56,164,166,169,172,175,178],{"class":58,"line":165},7,[56,167,168],{"class":130},"    cout ",[56,170,171],{"class":112},"\u003C\u003C",[56,173,174],{"class":66}," \"Hello world\"",[56,176,177],{"class":112}," \u003C\u003C",[56,179,180],{"class":130}," endl;\n",[56,182,184],{"class":58,"line":183},8,[56,185,138],{"emptyLinePlaceholder":137},[56,187,189],{"class":58,"line":188},9,[56,190,138],{"emptyLinePlaceholder":137},[56,192,194],{"class":58,"line":193},10,[56,195,196],{"class":156},"    // 返回 0 表示程序正常结束。\n",[56,198,200,203,206],{"class":58,"line":199},11,[56,201,202],{"class":112},"    return",[56,204,205],{"class":73}," 0",[56,207,131],{"class":130},[56,209,211],{"class":58,"line":210},12,[56,212,213],{"class":130},"}\n",[20,215,216,220],{},[217,218,219],"strong",{},"运行/观察结果："," 运行后会按输出语句打印对应内容，变量值可结合初始化、赋值和函数调用顺序推导。",[40,222,38],{"id":38},[20,224,225,226,229],{},"使用 ",[53,227,228],{},"g++"," 编译，然后运行生成的可执行文件：",[46,231,233],{"className":48,"code":232,"language":50,"meta":51,"style":51},"g++ main.cpp -std=c++17 -Wall -Wextra -o main\n./main\n",[53,234,235,257],{"__ignoreMap":51},[56,236,237,239,242,245,248,251,254],{"class":58,"line":59},[56,238,228],{"class":62},[56,240,241],{"class":66}," main.cpp",[56,243,244],{"class":73}," -std=c++17",[56,246,247],{"class":73}," -Wall",[56,249,250],{"class":73}," -Wextra",[56,252,253],{"class":73}," -o",[56,255,256],{"class":66}," main\n",[56,258,259],{"class":58,"line":70},[56,260,261],{"class":62},"./main\n",[20,263,264],{},"终端输出：",[46,266,271],{"className":267,"code":269,"language":270,"meta":51},[268],"language-text","Hello world\n","text",[53,272,269],{"__ignoreMap":51},[15,274,275],{"id":275},"main函数参数",[20,277,278,281],{},[53,279,280],{},"main"," 函数不是必须带参数。最常见的两种写法是：",[46,283,285],{"className":103,"code":284,"language":105,"meta":51,"style":51},"int main()\n{\n    // 程序从 main 函数开始执行，下面的语句会按顺序运行。\n    // 返回 0 表示程序正常结束。\n    return 0;\n}\n",[53,286,287,296,301,305,309,317],{"__ignoreMap":51},[56,288,289,291,293],{"class":58,"line":59},[56,290,144],{"class":112},[56,292,147],{"class":62},[56,294,295],{"class":130},"()\n",[56,297,298],{"class":58,"line":70},[56,299,300],{"class":130},"{\n",[56,302,303],{"class":58,"line":134},[56,304,157],{"class":156},[56,306,307],{"class":58,"line":141},[56,308,196],{"class":156},[56,310,311,313,315],{"class":58,"line":153},[56,312,202],{"class":112},[56,314,205],{"class":73},[56,316,131],{"class":130},[56,318,319],{"class":58,"line":160},[56,320,213],{"class":130},[20,322,323,325],{},[217,324,219],{}," 这是最简洁的程序入口，适合不需要读取命令行参数的程序。",[46,327,329],{"className":103,"code":328,"language":105,"meta":51,"style":51},"int main(int argc, char* argv[])\n{\n    // 程序从 main 函数开始执行，argc/argv 用来接收命令行参数。\n    // 返回 0 表示程序正常结束。\n    return 0;\n}\n",[53,330,331,358,362,367,371,379],{"__ignoreMap":51},[56,332,333,335,337,340,342,346,349,352,355],{"class":58,"line":59},[56,334,144],{"class":112},[56,336,147],{"class":62},[56,338,339],{"class":130},"(",[56,341,144],{"class":112},[56,343,345],{"class":344},"s4XuR"," argc",[56,347,348],{"class":130},", ",[56,350,351],{"class":112},"char*",[56,353,354],{"class":344}," argv",[56,356,357],{"class":130},"[])\n",[56,359,360],{"class":58,"line":70},[56,361,300],{"class":130},[56,363,364],{"class":58,"line":134},[56,365,366],{"class":156},"    // 程序从 main 函数开始执行，argc/argv 用来接收命令行参数。\n",[56,368,369],{"class":58,"line":141},[56,370,196],{"class":156},[56,372,373,375,377],{"class":58,"line":153},[56,374,202],{"class":112},[56,376,205],{"class":73},[56,378,131],{"class":130},[56,380,381],{"class":58,"line":160},[56,382,213],{"class":130},[20,384,385,387],{},[217,386,219],{}," 这也是标准的程序入口写法，适合需要读取命令行参数的程序。",[20,389,390],{},"其中：",[24,392,393,399,413],{},[27,394,395,398],{},[53,396,397],{},"argc"," 表示命令行参数的数量，通常至少为 1，因为程序自身的路径也会算作一个参数。",[27,400,401,404,405,408,409,412],{},[53,402,403],{},"argv"," 表示命令行参数数组，",[53,406,407],{},"argv[0]"," 通常是程序自身的路径或名称，",[53,410,411],{},"argv[1]"," 开始才是用户传入的参数。",[27,414,415,418,419,422],{},[53,416,417],{},"char* argv[]"," 也可以写成 ",[53,420,421],{},"char** argv","，两者在这里表达的含义相同。",[20,424,425],{},"示例：",[46,427,429],{"className":103,"code":428,"language":105,"meta":51,"style":51},"#include\u003Ciostream>\nusing namespace std;\n\nint main(int argc, char* argv[]) {\n    // 程序从 main 函数开始执行，argc/argv 用来接收命令行参数。\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    // 返回 0 表示程序正常结束。\n    return 0;\n}\n",[53,430,431,437,447,451,472,476,480,498,502,535,563,568,572,577,586],{"__ignoreMap":51},[56,432,433,435],{"class":58,"line":59},[56,434,113],{"class":112},[56,436,116],{"class":66},[56,438,439,441,443,445],{"class":58,"line":70},[56,440,121],{"class":112},[56,442,124],{"class":112},[56,444,127],{"class":62},[56,446,131],{"class":130},[56,448,449],{"class":58,"line":134},[56,450,138],{"emptyLinePlaceholder":137},[56,452,453,455,457,459,461,463,465,467,469],{"class":58,"line":141},[56,454,144],{"class":112},[56,456,147],{"class":62},[56,458,339],{"class":130},[56,460,144],{"class":112},[56,462,345],{"class":344},[56,464,348],{"class":130},[56,466,351],{"class":112},[56,468,354],{"class":344},[56,470,471],{"class":130},"[]) {\n",[56,473,474],{"class":58,"line":153},[56,475,366],{"class":156},[56,477,478],{"class":58,"line":160},[56,479,138],{"emptyLinePlaceholder":137},[56,481,482,484,486,489,491,494,496],{"class":58,"line":165},[56,483,168],{"class":130},[56,485,171],{"class":112},[56,487,488],{"class":66}," \"argc = \"",[56,490,177],{"class":112},[56,492,493],{"class":130}," argc ",[56,495,171],{"class":112},[56,497,180],{"class":130},[56,499,500],{"class":58,"line":183},[56,501,138],{"emptyLinePlaceholder":137},[56,503,504,507,510,512,515,518,520,523,526,529,532],{"class":58,"line":188},[56,505,506],{"class":112},"    for",[56,508,509],{"class":130}," (",[56,511,144],{"class":112},[56,513,514],{"class":130}," i ",[56,516,517],{"class":112},"=",[56,519,205],{"class":73},[56,521,522],{"class":130},"; i ",[56,524,525],{"class":112},"\u003C",[56,527,528],{"class":130}," argc; i",[56,530,531],{"class":112},"++",[56,533,534],{"class":130},") {\n",[56,536,537,540,542,545,547,549,551,554,556,559,561],{"class":58,"line":193},[56,538,539],{"class":130},"        cout ",[56,541,171],{"class":112},[56,543,544],{"class":66}," \"argv[\"",[56,546,177],{"class":112},[56,548,514],{"class":130},[56,550,171],{"class":112},[56,552,553],{"class":66}," \"] = \"",[56,555,177],{"class":112},[56,557,558],{"class":130}," argv[i] ",[56,560,171],{"class":112},[56,562,180],{"class":130},[56,564,565],{"class":58,"line":199},[56,566,567],{"class":130},"    }\n",[56,569,570],{"class":58,"line":210},[56,571,138],{"emptyLinePlaceholder":137},[56,573,575],{"class":58,"line":574},13,[56,576,196],{"class":156},[56,578,580,582,584],{"class":58,"line":579},14,[56,581,202],{"class":112},[56,583,205],{"class":73},[56,585,131],{"class":130},[56,587,589],{"class":58,"line":588},15,[56,590,213],{"class":130},[20,592,593,596,597,599,600,602,603,605],{},[217,594,595],{},"运行结果","：见下方“运行结果”；",[53,598,407],{}," 会随启动方式不同而变化，重点观察 ",[53,601,397],{}," 和各个 ",[53,604,403],{}," 的对应关系。",[20,607,608],{},"编译并运行：",[46,610,612],{"className":48,"code":611,"language":50,"meta":51,"style":51},"g++ main.cpp -std=c++17 -Wall -Wextra -o args_demo\n./args_demo hello 123\n",[53,613,614,631],{"__ignoreMap":51},[56,615,616,618,620,622,624,626,628],{"class":58,"line":59},[56,617,228],{"class":62},[56,619,241],{"class":66},[56,621,244],{"class":73},[56,623,247],{"class":73},[56,625,250],{"class":73},[56,627,253],{"class":73},[56,629,630],{"class":66}," args_demo\n",[56,632,633,636,639],{"class":58,"line":70},[56,634,635],{"class":62},"./args_demo",[56,637,638],{"class":66}," hello",[56,640,641],{"class":73}," 123\n",[20,643,644,646],{},[217,645,595],{},"：",[46,648,651],{"className":649,"code":650,"language":270,"meta":51},[268],"argc = 3\nargv[0] = ./args_demo\nargv[1] = hello\nargv[2] = 123\n",[53,652,650],{"__ignoreMap":51},[654,655,656],"blockquote",{},[20,657,658,659,661,662,664,665,667],{},"注意：",[53,660,407],{}," 的具体内容和启动方式有关，可能是 ",[53,663,635],{},"，也可能是完整路径。实际处理参数时，通常从 ",[53,666,411],{}," 开始读取用户输入的内容。",[15,669,670],{"id":670},"注释",[20,672,673,676],{},[217,674,675],{},"作用","：在代码中加一些说明和解释，方便自己或其他程序员程序员阅读代码",[20,678,679],{},[217,680,681],{},"两种格式",[683,684,685,698],"ol",{},[27,686,687,646,690,693],{},[217,688,689],{},"单行注释",[53,691,692],{},"// 描述信息",[24,694,695],{},[27,696,697],{},"通常放在一行代码的上方，或者一条语句的末尾，==对该行代码说明==",[27,699,700,703,704,707],{},[217,701,702],{},"多行注释","： ",[53,705,706],{},"/* 描述信息 */",[24,708,709],{},[27,710,711],{},"通常放在一段代码的上方，==对该段代码做整体说明==",[654,713,714],{},[20,715,716],{},"提示：编译器在编译代码时，会忽略注释的内容",[15,718,719],{"id":719},"变量",[20,721,722,724],{},[217,723,675],{},"：给一段指定的内存空间起名，方便操作这段内存",[20,726,727,646,730],{},[217,728,729],{},"语法",[53,731,732],{},"数据类型 变量名 = 初始值;",[20,734,735],{},[217,736,425],{},[46,738,740],{"className":103,"code":739,"language":105,"meta":51,"style":51},"#include\u003Ciostream>\nusing namespace std;\n\nint main() {\n\n    //变量的定义\n    //语法：数据类型  变量名 = 初始值\n\n    int a = 10;\n\n    cout \u003C\u003C \"a = \" \u003C\u003C a \u003C\u003C endl;\n    \n\n    return 0;\n}\n",[53,741,742,748,758,762,770,774,779,784,788,803,807,824,829,833,841],{"__ignoreMap":51},[56,743,744,746],{"class":58,"line":59},[56,745,113],{"class":112},[56,747,116],{"class":66},[56,749,750,752,754,756],{"class":58,"line":70},[56,751,121],{"class":112},[56,753,124],{"class":112},[56,755,127],{"class":62},[56,757,131],{"class":130},[56,759,760],{"class":58,"line":134},[56,761,138],{"emptyLinePlaceholder":137},[56,763,764,766,768],{"class":58,"line":141},[56,765,144],{"class":112},[56,767,147],{"class":62},[56,769,150],{"class":130},[56,771,772],{"class":58,"line":153},[56,773,138],{"emptyLinePlaceholder":137},[56,775,776],{"class":58,"line":160},[56,777,778],{"class":156},"    //变量的定义\n",[56,780,781],{"class":58,"line":165},[56,782,783],{"class":156},"    //语法：数据类型  变量名 = 初始值\n",[56,785,786],{"class":58,"line":183},[56,787,138],{"emptyLinePlaceholder":137},[56,789,790,793,796,798,801],{"class":58,"line":188},[56,791,792],{"class":112},"    int",[56,794,795],{"class":130}," a ",[56,797,517],{"class":112},[56,799,800],{"class":73}," 10",[56,802,131],{"class":130},[56,804,805],{"class":58,"line":193},[56,806,138],{"emptyLinePlaceholder":137},[56,808,809,811,813,816,818,820,822],{"class":58,"line":199},[56,810,168],{"class":130},[56,812,171],{"class":112},[56,814,815],{"class":66}," \"a = \"",[56,817,177],{"class":112},[56,819,795],{"class":130},[56,821,171],{"class":112},[56,823,180],{"class":130},[56,825,826],{"class":58,"line":210},[56,827,828],{"class":130},"    \n",[56,830,831],{"class":58,"line":574},[56,832,138],{"emptyLinePlaceholder":137},[56,834,835,837,839],{"class":58,"line":579},[56,836,202],{"class":112},[56,838,205],{"class":73},[56,840,131],{"class":130},[56,842,843],{"class":58,"line":588},[56,844,213],{"class":130},[20,846,847,220],{},[217,848,219],{},[654,850,851],{},[20,852,853],{},"注意：C++在创建变量时，必须给变量一个初始值，否则会报错",[15,855,856],{"id":856},"常量",[20,858,859,861],{},[217,860,675],{},"：用于记录程序中不可更改的数据",[20,863,864],{},"C++定义常量两种方式",[683,866,867,881],{},[27,868,869,872,873,876],{},[217,870,871],{},"#define"," 宏常量： ",[53,874,875],{},"#define 常量名 常量值",[24,877,878],{},[27,879,880],{},"==通常在文件上方定义==，表示一个常量",[27,882,883,886,887,890],{},[217,884,885],{},"const","修饰的变量 ",[53,888,889],{},"const 数据类型 常量名 = 常量值",[24,891,892],{},[27,893,894],{},"==通常在变量定义前加关键字const==，修饰该变量为常量，不可修改",[20,896,897],{},[217,898,425],{},[46,900,902],{"className":103,"code":901,"language":105,"meta":51,"style":51},"//1、宏常量\n#define day 7\n\nint main() {\n\n    cout \u003C\u003C \"一周里总共有 \" \u003C\u003C day \u003C\u003C \" 天\" \u003C\u003C endl;\n    //day = 8;  //报错，宏常量不可以修改\n\n    //2、const修饰变量\n    const int month = 12;\n    cout \u003C\u003C \"一年里总共有 \" \u003C\u003C month \u003C\u003C \" 个月份\" \u003C\u003C endl;\n    //month = 24; //报错，常量是不可以修改的\n    \n    \n\n    return 0;\n}\n",[53,903,904,909,919,923,931,935,958,966,970,975,993,1015,1023,1027,1031,1035,1044],{"__ignoreMap":51},[56,905,906],{"class":58,"line":59},[56,907,908],{"class":156},"//1、宏常量\n",[56,910,911,913,916],{"class":58,"line":70},[56,912,871],{"class":112},[56,914,915],{"class":62}," day",[56,917,918],{"class":73}," 7\n",[56,920,921],{"class":58,"line":134},[56,922,138],{"emptyLinePlaceholder":137},[56,924,925,927,929],{"class":58,"line":141},[56,926,144],{"class":112},[56,928,147],{"class":62},[56,930,150],{"class":130},[56,932,933],{"class":58,"line":153},[56,934,138],{"emptyLinePlaceholder":137},[56,936,937,939,941,944,946,949,951,954,956],{"class":58,"line":160},[56,938,168],{"class":130},[56,940,171],{"class":112},[56,942,943],{"class":66}," \"一周里总共有 \"",[56,945,177],{"class":112},[56,947,948],{"class":130}," day ",[56,950,171],{"class":112},[56,952,953],{"class":66}," \" 天\"",[56,955,177],{"class":112},[56,957,180],{"class":130},[56,959,960,963],{"class":58,"line":165},[56,961,962],{"class":156},"    //day = 8;",[56,964,965],{"class":156},"  //报错，宏常量不可以修改\n",[56,967,968],{"class":58,"line":183},[56,969,138],{"emptyLinePlaceholder":137},[56,971,972],{"class":58,"line":188},[56,973,974],{"class":156},"    //2、const修饰变量\n",[56,976,977,980,983,986,988,991],{"class":58,"line":193},[56,978,979],{"class":112},"    const",[56,981,982],{"class":112}," int",[56,984,985],{"class":130}," month ",[56,987,517],{"class":112},[56,989,990],{"class":73}," 12",[56,992,131],{"class":130},[56,994,995,997,999,1002,1004,1006,1008,1011,1013],{"class":58,"line":199},[56,996,168],{"class":130},[56,998,171],{"class":112},[56,1000,1001],{"class":66}," \"一年里总共有 \"",[56,1003,177],{"class":112},[56,1005,985],{"class":130},[56,1007,171],{"class":112},[56,1009,1010],{"class":66}," \" 个月份\"",[56,1012,177],{"class":112},[56,1014,180],{"class":130},[56,1016,1017,1020],{"class":58,"line":210},[56,1018,1019],{"class":156},"    //month = 24;",[56,1021,1022],{"class":156}," //报错，常量是不可以修改的\n",[56,1024,1025],{"class":58,"line":574},[56,1026,828],{"class":130},[56,1028,1029],{"class":58,"line":579},[56,1030,828],{"class":130},[56,1032,1033],{"class":58,"line":588},[56,1034,138],{"emptyLinePlaceholder":137},[56,1036,1038,1040,1042],{"class":58,"line":1037},16,[56,1039,202],{"class":112},[56,1041,205],{"class":73},[56,1043,131],{"class":130},[56,1045,1047],{"class":58,"line":1046},17,[56,1048,213],{"class":130},[20,1050,1051,220],{},[217,1052,219],{},[15,1054,1055],{"id":1055},"关键字",[20,1057,1058],{},"**作用：**关键字是C++中预先保留的单词（标识符）",[24,1060,1061],{},[27,1062,1063],{},[217,1064,1065],{},"在定义变量或者常量时候，不要用关键字",[20,1067,1068],{},"C++关键字如下：",[1070,1071,1072,1094],"table",{},[1073,1074,1075],"thead",{},[1076,1077,1078,1082,1085,1088,1091],"tr",{},[1079,1080,1081],"th",{},"asm",[1079,1083,1084],{},"do",[1079,1086,1087],{},"if",[1079,1089,1090],{},"return",[1079,1092,1093],{},"typedef",[1095,1096,1097,1115,1131,1148,1165,1181,1198,1215,1231,1248,1265,1281],"tbody",{},[1076,1098,1099,1103,1106,1109,1112],{},[1100,1101,1102],"td",{},"auto",[1100,1104,1105],{},"double",[1100,1107,1108],{},"inline",[1100,1110,1111],{},"short",[1100,1113,1114],{},"typeid",[1076,1116,1117,1120,1123,1125,1128],{},[1100,1118,1119],{},"bool",[1100,1121,1122],{},"dynamic_cast",[1100,1124,144],{},[1100,1126,1127],{},"signed",[1100,1129,1130],{},"typename",[1076,1132,1133,1136,1139,1142,1145],{},[1100,1134,1135],{},"break",[1100,1137,1138],{},"else",[1100,1140,1141],{},"long",[1100,1143,1144],{},"sizeof",[1100,1146,1147],{},"union",[1076,1149,1150,1153,1156,1159,1162],{},[1100,1151,1152],{},"case",[1100,1154,1155],{},"enum",[1100,1157,1158],{},"mutable",[1100,1160,1161],{},"static",[1100,1163,1164],{},"unsigned",[1076,1166,1167,1170,1173,1176,1179],{},[1100,1168,1169],{},"catch",[1100,1171,1172],{},"explicit",[1100,1174,1175],{},"namespace",[1100,1177,1178],{},"static_cast",[1100,1180,121],{},[1076,1182,1183,1186,1189,1192,1195],{},[1100,1184,1185],{},"char",[1100,1187,1188],{},"export",[1100,1190,1191],{},"new",[1100,1193,1194],{},"struct",[1100,1196,1197],{},"virtual",[1076,1199,1200,1203,1206,1209,1212],{},[1100,1201,1202],{},"class",[1100,1204,1205],{},"extern",[1100,1207,1208],{},"operator",[1100,1210,1211],{},"switch",[1100,1213,1214],{},"void",[1076,1216,1217,1219,1222,1225,1228],{},[1100,1218,885],{},[1100,1220,1221],{},"false",[1100,1223,1224],{},"private",[1100,1226,1227],{},"template",[1100,1229,1230],{},"volatile",[1076,1232,1233,1236,1239,1242,1245],{},[1100,1234,1235],{},"const_cast",[1100,1237,1238],{},"float",[1100,1240,1241],{},"protected",[1100,1243,1244],{},"this",[1100,1246,1247],{},"wchar_t",[1076,1249,1250,1253,1256,1259,1262],{},[1100,1251,1252],{},"continue",[1100,1254,1255],{},"for",[1100,1257,1258],{},"public",[1100,1260,1261],{},"throw",[1100,1263,1264],{},"while",[1076,1266,1267,1270,1273,1276,1279],{},[1100,1268,1269],{},"default",[1100,1271,1272],{},"friend",[1100,1274,1275],{},"register",[1100,1277,1278],{},"true",[1100,1280],{},[1076,1282,1283,1286,1289,1292,1295],{},[1100,1284,1285],{},"delete",[1100,1287,1288],{},"goto",[1100,1290,1291],{},"reinterpret_cast",[1100,1293,1294],{},"try",[1100,1296],{},[20,1298,1299],{},[53,1300,1301],{},"提示：在给变量或者常量起名称时候，不要用C++得关键字，否则会产生歧义。",[15,1303,1304],{"id":1304},"标识符命名规则",[20,1306,1307,1309],{},[217,1308,675],{},"：C++规定给标识符（变量、常量）命名时，有一套自己的规则",[24,1311,1312,1315,1318,1321],{},[27,1313,1314],{},"标识符不能是关键字",[27,1316,1317],{},"标识符只能由字母、数字、下划线组成",[27,1319,1320],{},"第一个字符必须为字母或下划线",[27,1322,1323],{},"标识符中字母区分大小写",[654,1325,1326],{},[20,1327,1328],{},"建议：给标识符命名时，争取做到见名知意的效果，方便自己和他人的阅读",[10,1330,1332],{"id":1331},"c-与-c-的关系和学习路线","C 与 C++ 的关系和学习路线",[20,1334,1335],{},[217,1336,1337],{},"C/C++介绍：",[20,1339,1340],{},"C和C++是两种的高级计算机语言，常见的高级语言还有Python，Rust，Go，C#(C Sharp、C++++)，Java，JavaScript，LinuxShell等等。",[20,1342,1343],{},"C++语言是在C语言的基础上，添加了面向对象、模板等现代程序设计语言的特性而发展起来的。两者无论是从语法规则上，还是从运算符的数量和使用上，都非常相似，所以我们常常将这两门语言统称为“C/C++”。",[20,1345,1346],{},"C语言和C++并不是对立的竞争关系： 1)C++是C语言的加强，是一种更好的C语言，实际上C++和C语言是同一门语言的不同版本。 2)C++是以C语言为基础的，并且完全兼容C语言的特性。 C语言和C++语言的学习是可以相互促进。学好C语言，可以为我们将来进一步地学习C++语言打好基础，而C++语言的学习，也会促进我们对于C语言的理解，从而更好地运用C语言。",[1070,1348,1349,1363],{},[1073,1350,1351],{},[1076,1352,1353,1357,1360],{},[1079,1354,1356],{"align":1355},"left","特性",[1079,1358,1359],{"align":1355},"C 语言",[1079,1361,1362],{"align":1355},"C++ 语言",[1095,1364,1365,1376,1387,1398,1409,1420,1431],{},[1076,1366,1367,1370,1373],{},[1100,1368,1369],{"align":1355},"编程范式",[1100,1371,1372],{"align":1355},"面向过程",[1100,1374,1375],{"align":1355},"多范式，支持面向对象",[1076,1377,1378,1381,1384],{},[1100,1379,1380],{"align":1355},"内存管理",[1100,1382,1383],{"align":1355},"手动管理",[1100,1385,1386],{"align":1355},"手动管理，提供 RAII（资源获取即初始化）",[1076,1388,1389,1392,1395],{},[1100,1390,1391],{"align":1355},"代码复用性",[1100,1393,1394],{"align":1355},"较低",[1100,1396,1397],{"align":1355},"高，通过类、继承、模板等实现",[1076,1399,1400,1403,1406],{},[1100,1401,1402],{"align":1355},"标准库",[1100,1404,1405],{"align":1355},"标准 C 库",[1100,1407,1408],{"align":1355},"标准模板库（STL）和 C 标准库",[1076,1410,1411,1414,1417],{},[1100,1412,1413],{"align":1355},"运行效率",[1100,1415,1416],{"align":1355},"高",[1100,1418,1419],{"align":1355},"稍低于 C，但差距不大",[1076,1421,1422,1425,1428],{},[1100,1423,1424],{"align":1355},"应用场景",[1100,1426,1427],{"align":1355},"操作系统、嵌入式",[1100,1429,1430],{"align":1355},"游戏开发、图形处理、大型应用",[1076,1432,1433,1436,1439],{},[1100,1434,1435],{"align":1355},"类型检查",[1100,1437,1438],{"align":1355},"较松散",[1100,1440,1441],{"align":1355},"较严格，提供更多类型检查",[20,1443,1444,1445],{},"**本文只负责指导一些问题，学****C/C++**",[217,1446,1447],{},"还是以下列视频为主:",[20,1449,1450,1451],{},"C/C++环境配置:",[1452,1453,1457],"a",{"href":1454,"rel":1455},"https://sdutvincirobot.feishu.cn/wiki/FQszwXIR5iQgCfk7pRwc9rYpnqg",[1456],"nofollow","电控组环境搭建大全",[683,1459,1460],{},[27,1461,1462],{},"C++ 视频教程：",[20,1464,1465],{},[1452,1466,1467],{"href":1467,"rel":1468},"https://www.bilibili.com/video/BV1et411b73Z",[1456],[683,1470,1471],{"start":70},[27,1472,1473],{},"鹏哥C语言视频：",[20,1475,1476],{},[1452,1477,1478],{"href":1478,"rel":1479},"https://www.bilibili.com/video/BV1cq4y1U7sg",[1456],[683,1481,1482],{"start":134},[27,1483,1484],{},"菜鸟教程：",[20,1486,1487],{},[1452,1488,1489],{"href":1489,"rel":1490},"https://www.runoob.com/cprogramming/c-tutorial.html",[1456],[20,1492,1493],{},[1452,1494,1495],{"href":1495,"rel":1496},"https://www.runoob.com/cplusplus/cpp-tutorial.html",[1456],[1498,1499,1500],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .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":51,"searchDepth":70,"depth":70,"links":1502},[1503,1512],{"id":12,"depth":70,"text":13,"children":1504},[1505,1506,1507,1508,1509,1510,1511],{"id":17,"depth":134,"text":18},{"id":275,"depth":134,"text":275},{"id":670,"depth":134,"text":670},{"id":719,"depth":134,"text":719},{"id":856,"depth":134,"text":856},{"id":1055,"depth":134,"text":1055},{"id":1304,"depth":134,"text":1304},{"id":1331,"depth":70,"text":1332},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi","1",1000000,"2023-10-05","wiki/2023-10-05-cplusplus-jiao-xue","zh-cn:2023-10-05-cplusplus-jiao-xue","/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue","Cplusplus教学","md","wiki/2023-10-05-Cplusplus教学/ch1-C++基础初识",false,null,"/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi","zh-CN","zh-cn",{},{"title":5,"description":51},"kFbyi3ze01Vqw2iV6Gf9iDYMFU8RMbUh8s9wEWRbw5I",[1532,1533,1539,1545,1551,1557,1563,1569,1575,1581,1587,1593,1599,1605,1611,1617,1623,1629,1635,1641,1647,1653,1659,1665,1670,1676,1682,1688,1694,1700,1706,1712,1718,1724,1730,1736,1742,1748,1754,1760,1766,1772,1777,1783,1789,1795,1801,1807,1813,1819,1825,1831,1837,1843,1849,1855,1861,1867,1873,1879,1885,1891,1897,1903,1909,1915,1921,1927,1933,1939],{"path":1513,"stem":1522,"title":5,"date":1516,"chapter":1514,"chapterSort":1515,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},{"path":1534,"stem":1535,"title":1536,"date":1516,"chapter":1537,"chapterSort":1538,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch10-nei-cun-fen-qu-yu-sheng-ming-zhou-qi","wiki/2023-10-05-Cplusplus教学/ch10-内存分区与生命周期","内存分区与生命周期","10",10000000,{"path":1540,"stem":1541,"title":1542,"date":1516,"chapter":1543,"chapterSort":1544,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch11-yin-yong","wiki/2023-10-05-Cplusplus教学/ch11-引用","引用","11",11000000,{"path":1546,"stem":1547,"title":1548,"date":1516,"chapter":1549,"chapterSort":1550,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch12-han-shu-ti-gao-yu-ming-ming-kong-jian","wiki/2023-10-05-Cplusplus教学/ch12-函数提高与命名空间","函数提高与命名空间","12",12000000,{"path":1552,"stem":1553,"title":1554,"date":1516,"chapter":1555,"chapterSort":1556,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-1-feng-zhuang","wiki/2023-10-05-Cplusplus教学/ch13-1-封装","封装","13.1",13010000,{"path":1558,"stem":1559,"title":1560,"date":1516,"chapter":1561,"chapterSort":1562,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-2-dui-xiang-chu-shi-hua-he-qing-li","wiki/2023-10-05-Cplusplus教学/ch13-2-对象初始化和清理","对象初始化和清理","13.2",13020000,{"path":1564,"stem":1565,"title":1566,"date":1516,"chapter":1567,"chapterSort":1568,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-3-dui-xiang-mo-xing-yu-this-zhi-zhen","wiki/2023-10-05-Cplusplus教学/ch13-3-对象模型与this指针","对象模型与this指针","13.3",13030000,{"path":1570,"stem":1571,"title":1572,"date":1516,"chapter":1573,"chapterSort":1574,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai","wiki/2023-10-05-Cplusplus教学/ch13-4-友元与运算符重载","友元与运算符重载","13.4",13040000,{"path":1576,"stem":1577,"title":1578,"date":1516,"chapter":1579,"chapterSort":1580,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-5-ji-cheng","wiki/2023-10-05-Cplusplus教学/ch13-5-继承","继承","13.5",13050000,{"path":1582,"stem":1583,"title":1584,"date":1516,"chapter":1585,"chapterSort":1586,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-6-duo-tai","wiki/2023-10-05-Cplusplus教学/ch13-6-多态","多态","13.6",13060000,{"path":1588,"stem":1589,"title":1590,"date":1516,"chapter":1591,"chapterSort":1592,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-lei-he-dui-xiang","wiki/2023-10-05-Cplusplus教学/ch13-类和对象","类和对象","13",13000000,{"path":1594,"stem":1595,"title":1596,"date":1516,"chapter":1597,"chapterSort":1598,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch14-wen-jian-cao-zuo","wiki/2023-10-05-Cplusplus教学/ch14-文件操作","文件操作","14",14000000,{"path":1600,"stem":1601,"title":1602,"date":1516,"chapter":1603,"chapterSort":1604,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch15-mu-ban","wiki/2023-10-05-Cplusplus教学/ch15-模板","模板","15",15000000,{"path":1606,"stem":1607,"title":1608,"date":1516,"chapter":1609,"chapterSort":1610,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-1-stl-chu-shi","wiki/2023-10-05-Cplusplus教学/ch16-1-STL初识","STL初识","16.1",16010000,{"path":1612,"stem":1613,"title":1614,"date":1516,"chapter":1615,"chapterSort":1616,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-2-std-array","wiki/2023-10-05-Cplusplus教学/ch16-2-std-array","std::array","16.2",16020000,{"path":1618,"stem":1619,"title":1620,"date":1516,"chapter":1621,"chapterSort":1622,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-3-string-rong-qi","wiki/2023-10-05-Cplusplus教学/ch16-3-string容器","string容器","16.3",16030000,{"path":1624,"stem":1625,"title":1626,"date":1516,"chapter":1627,"chapterSort":1628,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-4-vector-yu-deque-rong-qi","wiki/2023-10-05-Cplusplus教学/ch16-4-vector与deque容器","vector与deque容器","16.4",16040000,{"path":1630,"stem":1631,"title":1632,"date":1516,"chapter":1633,"chapterSort":1634,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-5-stack-queue-list-rong-qi","wiki/2023-10-05-Cplusplus教学/ch16-5-stack-queue-list容器","stack / queue / list 容器","16.5",16050000,{"path":1636,"stem":1637,"title":1638,"date":1516,"chapter":1639,"chapterSort":1640,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-6-set-map-rong-qi","wiki/2023-10-05-Cplusplus教学/ch16-6-set-map容器","set / map 容器","16.6",16060000,{"path":1642,"stem":1643,"title":1644,"date":1516,"chapter":1645,"chapterSort":1646,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-7-han-shu-dui-xiang-yu-wei-ci","wiki/2023-10-05-Cplusplus教学/ch16-7-函数对象与谓词","函数对象与谓词","16.7",16070000,{"path":1648,"stem":1649,"title":1650,"date":1516,"chapter":1651,"chapterSort":1652,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-8-chang-yong-suan-fa","wiki/2023-10-05-Cplusplus教学/ch16-8-常用算法","常用算法","16.8",16080000,{"path":1654,"stem":1655,"title":1656,"date":1516,"chapter":1657,"chapterSort":1658,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-stl-ti-gao-bian-cheng","wiki/2023-10-05-Cplusplus教学/ch16-STL提高编程","STL提高编程","16",16000000,{"path":1660,"stem":1661,"title":1662,"date":1516,"chapter":1663,"chapterSort":1664,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch17-c-lei-xing-zhuan-huan","wiki/2023-10-05-Cplusplus教学/ch17-C++类型转换","C++类型转换","17",17000000,{"path":1666,"stem":1667,"title":1102,"date":1516,"chapter":1668,"chapterSort":1669,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-1-auto","wiki/2023-10-05-Cplusplus教学/ch18-1-auto","18.1",18010000,{"path":1671,"stem":1672,"title":1673,"date":1516,"chapter":1674,"chapterSort":1675,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-10-you-zhi-yin-yong-he-yi-dong-yu-yi","wiki/2023-10-05-Cplusplus教学/ch18-10-右值引用和移动语义","右值引用和移动语义","18.10",18100000,{"path":1677,"stem":1678,"title":1679,"date":1516,"chapter":1680,"chapterSort":1681,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-11-lambda-biao-da-shi","wiki/2023-10-05-Cplusplus教学/ch18-11-Lambda表达式","Lambda 表达式","18.11",18110000,{"path":1683,"stem":1684,"title":1685,"date":1516,"chapter":1686,"chapterSort":1687,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-12-std-function","wiki/2023-10-05-Cplusplus教学/ch18-12-std-function","std::function","18.12",18120000,{"path":1689,"stem":1690,"title":1691,"date":1516,"chapter":1692,"chapterSort":1693,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-13-std-bind","wiki/2023-10-05-Cplusplus教学/ch18-13-std-bind","std::bind","18.13",18130000,{"path":1695,"stem":1696,"title":1697,"date":1516,"chapter":1698,"chapterSort":1699,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-14-std-optional","wiki/2023-10-05-Cplusplus教学/ch18-14-std-optional","std::optional","18.14",18140000,{"path":1701,"stem":1702,"title":1703,"date":1516,"chapter":1704,"chapterSort":1705,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-15-std-variant","wiki/2023-10-05-Cplusplus教学/ch18-15-std-variant","std::variant","18.15",18150000,{"path":1707,"stem":1708,"title":1709,"date":1516,"chapter":1710,"chapterSort":1711,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-16-std-span","wiki/2023-10-05-Cplusplus教学/ch18-16-std-span","std::span","18.16",18160000,{"path":1713,"stem":1714,"title":1715,"date":1516,"chapter":1716,"chapterSort":1717,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-17-std-format-print","wiki/2023-10-05-Cplusplus教学/ch18-17-std-format-print","std::format / std::print","18.17",18170000,{"path":1719,"stem":1720,"title":1721,"date":1516,"chapter":1722,"chapterSort":1723,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-18-std-chrono","wiki/2023-10-05-Cplusplus教学/ch18-18-std-chrono","std::chrono","18.18",18180000,{"path":1725,"stem":1726,"title":1727,"date":1516,"chapter":1728,"chapterSort":1729,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-1-std-thread","wiki/2023-10-05-Cplusplus教学/ch18-19-1-std-thread","std::thread 与 join","18.19.1",18190100,{"path":1731,"stem":1732,"title":1733,"date":1516,"chapter":1734,"chapterSort":1735,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-2-mutex-lock-guard","wiki/2023-10-05-Cplusplus教学/ch18-19-2-mutex-lock-guard","mutex 与 lock_guard","18.19.2",18190200,{"path":1737,"stem":1738,"title":1739,"date":1516,"chapter":1740,"chapterSort":1741,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-3-std-atomic","wiki/2023-10-05-Cplusplus教学/ch18-19-3-std-atomic","std::atomic","18.19.3",18190300,{"path":1743,"stem":1744,"title":1745,"date":1516,"chapter":1746,"chapterSort":1747,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-4-condition-variable","wiki/2023-10-05-Cplusplus教学/ch18-19-4-condition-variable","condition_variable","18.19.4",18190400,{"path":1749,"stem":1750,"title":1751,"date":1516,"chapter":1752,"chapterSort":1753,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-bing-fa-bian-cheng","wiki/2023-10-05-Cplusplus教学/ch18-19-并发编程","并发编程","18.19",18190000,{"path":1755,"stem":1756,"title":1757,"date":1516,"chapter":1758,"chapterSort":1759,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-2-nullptr","wiki/2023-10-05-Cplusplus教学/ch18-2-nullptr","nullptr","18.2",18020000,{"path":1761,"stem":1762,"title":1763,"date":1516,"chapter":1764,"chapterSort":1765,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-20-std-filesystem","wiki/2023-10-05-Cplusplus教学/ch18-20-std-filesystem","std::filesystem","18.20",18200000,{"path":1767,"stem":1768,"title":1769,"date":1516,"chapter":1770,"chapterSort":1771,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-21-modules-jian-jie","wiki/2023-10-05-Cplusplus教学/ch18-21-modules简介","modules 简介","18.21",18210000,{"path":1773,"stem":1774,"title":121,"date":1516,"chapter":1775,"chapterSort":1776,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-3-using","wiki/2023-10-05-Cplusplus教学/ch18-3-using","18.3",18030000,{"path":1778,"stem":1779,"title":1780,"date":1516,"chapter":1781,"chapterSort":1782,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-4-enum-class","wiki/2023-10-05-Cplusplus教学/ch18-4-enum-class","enum class","18.4",18040000,{"path":1784,"stem":1785,"title":1786,"date":1516,"chapter":1787,"chapterSort":1788,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-5-fan-wei-for-xun-huan","wiki/2023-10-05-Cplusplus教学/ch18-5-范围for循环","范围 for 循环","18.5",18050000,{"path":1790,"stem":1791,"title":1792,"date":1516,"chapter":1793,"chapterSort":1794,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-6-jie-gou-hua-bang-ding","wiki/2023-10-05-Cplusplus教学/ch18-6-结构化绑定","结构化绑定","18.6",18060000,{"path":1796,"stem":1797,"title":1798,"date":1516,"chapter":1799,"chapterSort":1800,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-7-constexpr","wiki/2023-10-05-Cplusplus教学/ch18-7-constexpr","constexpr","18.7",18070000,{"path":1802,"stem":1803,"title":1804,"date":1516,"chapter":1805,"chapterSort":1806,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-8-raii","wiki/2023-10-05-Cplusplus教学/ch18-8-RAII","RAII","18.8",18080000,{"path":1808,"stem":1809,"title":1810,"date":1516,"chapter":1811,"chapterSort":1812,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-9-zhi-neng-zhi-zhen","wiki/2023-10-05-Cplusplus教学/ch18-9-智能指针","智能指针","18.9",18090000,{"path":1814,"stem":1815,"title":1816,"date":1516,"chapter":1817,"chapterSort":1818,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-xian-dai-c","wiki/2023-10-05-Cplusplus教学/ch18-现代C++","现代C++","18",18000000,{"path":1820,"stem":1821,"title":1822,"date":1516,"chapter":1823,"chapterSort":1824,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-1-ding-shi-qi-yu-yi-bu-io","wiki/2023-10-05-Cplusplus教学/ch19-1-1-定时器与异步IO","定时器与异步 IO","19.1.1",19010100,{"path":1826,"stem":1827,"title":1828,"date":1516,"chapter":1829,"chapterSort":1830,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-2-boost-asio-ji-chu","wiki/2023-10-05-Cplusplus教学/ch19-1-2-Boost.Asio基础","Boost.Asio 基础","19.1.2",19010200,{"path":1832,"stem":1833,"title":1834,"date":1516,"chapter":1835,"chapterSort":1836,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-3-chuan-kou-tong-xin","wiki/2023-10-05-Cplusplus教学/ch19-1-3-串口通信","串口通信","19.1.3",19010300,{"path":1838,"stem":1839,"title":1840,"date":1516,"chapter":1841,"chapterSort":1842,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-4-tcp-tong-xin","wiki/2023-10-05-Cplusplus教学/ch19-1-4-TCP通信","TCP 通信","19.1.4",19010400,{"path":1844,"stem":1845,"title":1846,"date":1516,"chapter":1847,"chapterSort":1848,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-5-udp-tong-xin","wiki/2023-10-05-Cplusplus教学/ch19-1-5-UDP通信","UDP 通信","19.1.5",19010500,{"path":1850,"stem":1851,"title":1852,"date":1516,"chapter":1853,"chapterSort":1854,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-6-ji-qi-ren-gong-cheng-xie-fa-yu-ros2-ji-cheng","wiki/2023-10-05-Cplusplus教学/ch19-1-6-机器人工程写法与ROS2集成","机器人工程写法与 ROS2 集成","19.1.6",19010600,{"path":1856,"stem":1857,"title":1858,"date":1516,"chapter":1859,"chapterSort":1860,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-boost-asio-yi-bu-io-ku","wiki/2023-10-05-Cplusplus教学/ch19-1-Boost.Asio异步IO库","Boost.Asio异步IO库","19.1",19010000,{"path":1862,"stem":1863,"title":1864,"date":1516,"chapter":1865,"chapterSort":1866,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-2-eigen-xian-xing-dai-shu-ku","wiki/2023-10-05-Cplusplus教学/ch19-2-Eigen线性代数库","Eigen线性代数库","19.2",19020000,{"path":1868,"stem":1869,"title":1870,"date":1516,"chapter":1871,"chapterSort":1872,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-3-opencv-ji-suan-ji-shi-jue-ku","wiki/2023-10-05-Cplusplus教学/ch19-3-OpenCV计算机视觉库","OpenCV计算机视觉库","19.3",19030000,{"path":1874,"stem":1875,"title":1876,"date":1516,"chapter":1877,"chapterSort":1878,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-4-pcl-dian-yun-ku","wiki/2023-10-05-Cplusplus教学/ch19-4-PCL点云库","PCL点云库","19.4",19040000,{"path":1880,"stem":1881,"title":1882,"date":1516,"chapter":1883,"chapterSort":1884,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-5-sophus-li-qun-li-dai-shu-ku","wiki/2023-10-05-Cplusplus教学/ch19-5-Sophus李群李代数库","Sophus 李群李代数库","19.5",19050000,{"path":1886,"stem":1887,"title":1888,"date":1516,"chapter":1889,"chapterSort":1890,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-chang-yong-ku","wiki/2023-10-05-Cplusplus教学/ch19-常用库","常用库学习","19",19000000,{"path":1892,"stem":1893,"title":1894,"date":1516,"chapter":1895,"chapterSort":1896,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch2-shu-ju-lei-xing-yu-shu-ju-cun-fang","wiki/2023-10-05-Cplusplus教学/ch2-数据类型与数据存放","数据类型与数据存放","2",2000000,{"path":1898,"stem":1899,"title":1900,"date":1516,"chapter":1901,"chapterSort":1902,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch3-shu-ru-shu-chu","wiki/2023-10-05-Cplusplus教学/ch3-输入输出","输入输出","3",3000000,{"path":1904,"stem":1905,"title":1906,"date":1516,"chapter":1907,"chapterSort":1908,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch4-yun-suan-fu","wiki/2023-10-05-Cplusplus教学/ch4-运算符","运算符","4",4000000,{"path":1910,"stem":1911,"title":1912,"date":1516,"chapter":1913,"chapterSort":1914,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch5-cheng-xu-liu-cheng-jie-gou","wiki/2023-10-05-Cplusplus教学/ch5-程序流程结构","程序流程结构","5",5000000,{"path":1916,"stem":1917,"title":1918,"date":1516,"chapter":1919,"chapterSort":1920,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch6-shu-zu","wiki/2023-10-05-Cplusplus教学/ch6-数组","数组","6",6000000,{"path":1922,"stem":1923,"title":1924,"date":1516,"chapter":1925,"chapterSort":1926,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch7-han-shu-yu-tou-wen-jian","wiki/2023-10-05-Cplusplus教学/ch7-函数与头文件","函数与头文件","7",7000000,{"path":1928,"stem":1929,"title":1930,"date":1516,"chapter":1931,"chapterSort":1932,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch8-zhi-zhen","wiki/2023-10-05-Cplusplus教学/ch8-指针","指针","8",8000000,{"path":1934,"stem":1935,"title":1936,"date":1516,"chapter":1937,"chapterSort":1938,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":1523},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch9-jie-gou-ti-yu-gong-yong-ti","wiki/2023-10-05-Cplusplus教学/ch9-结构体与共用体","结构体与共用体","9",9000000,{"path":1519,"stem":1940,"title":1941,"date":1516,"chapter":1524,"chapterSort":1942,"docKey":1518,"docRoot":1519,"docTitle":1520,"isWikiDoc":137,"isWikiIndex":137},"wiki/2023-10-05-Cplusplus教学/index","C/C++教程",0,{"variants":1944},[1945,1948,1951,1954,1957],{"path":1946,"localeSlug":1947,"i18nKey":1522},"/en-us/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi","en-us",{"path":1949,"localeSlug":1950,"i18nKey":1522},"/zh-hant/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi","zh-hant",{"path":1952,"localeSlug":1953,"i18nKey":1522},"/zh-hk/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi","zh-hk",{"path":1955,"localeSlug":1956,"i18nKey":1522},"/zh-tw/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi","zh-tw",{"path":1513,"localeSlug":1527,"i18nKey":1522},[1946,1525,1949,1525,1952,1525,1955,1525,1513,1525],1780663028782]