[{"data":1,"prerenderedAt":2481},["ShallowReactive",2],{"wiki-page-\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1100-nei-cun-fen-qu-yu-sheng-ming-zhou-qi":3,"wiki-doc-items-2023-10-05-cplusplus-jiao-xue":2095},{"id":4,"title":5,"body":6,"chapterDepth":2082,"chapterOrder":2083,"date":2084,"description":26,"docKey":2085,"docRoot":2086,"docTitle":2087,"extension":2088,"isWikiDoc":76,"isWikiIndex":2089,"meta":2090,"navigation":76,"path":2091,"seo":2092,"stem":2093,"wikiDepth":62,"__hash__":2094},"wiki\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F1100-内存分区与生命周期.md","内存分区与生命周期",{"type":7,"value":8,"toc":2070},"minimark",[9,13,17,21,28,31,49,336,342,355,514,518,521,682,686,689,692,718,721,727,742,747,750,753,760,766,769,776,782,787,790,793,796,801,1321,1327,1330,1336,1339,1353,1356,1361,1364,1367,1371,1510,1515,1520,1523,1526,1530,1670,1674,1678,1681,1684,1687,1690,1693,1699,1702,1707,1863,1867,1872,2062,2066],[10,11,12],"h2",{"id":12},"程序运行顺序与变量生命周期",[14,15,16],"h3",{"id":16},"代码运行思路",[18,19,20],"p",{},"从main函数开始，代码是一行一行运行的。（一个工程里有且只有一个main函数）",[18,22,23],{},[24,25],"img",{"alt":26,"src":27},"","https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002Fimage1.webp",[14,29,30],{"id":30},"生命周期",[32,33,34],"ol",{},[35,36,37,41],"li",{},[38,39,40],"strong",{},"局部变量：",[32,42,43,46],{},[35,44,45],{},"位置：在某个函数或块的内部声明的变量称为局部变量。",[35,47,48],{},"作用域：它们只能被该函数或该代码块内部的语句使用。局部变量在函数外部是不可知的。",[50,51,55],"pre",{"className":52,"code":53,"language":54,"meta":26,"style":26},"language-cpp shiki shiki-themes github-light github-dark","#include \u003Cstdio.h>\n\n int add(int a,int b);\n\nint main ()\n{\n  \u002F* 局部变量声明 *\u002F\n  int a, b;\n  int c;\n\n  \u002F* 实际初始化 *\u002F\n  a = 10;\n  b = 20;\n  c = add(a,b);\n\n  printf (\"value of a = %d, b = %d and c = %d\\n\", a, b, c);\n\n  return 0;\n}\n\nint add(int x,int y)\n{\n    int z = x + y;\n    return z;\n}\n","cpp",[56,57,58,71,78,110,115,126,132,139,148,156,161,167,183,196,209,214,246,251,262,268,273,297,302,322,331],"code",{"__ignoreMap":26},[59,60,63,67],"span",{"class":61,"line":62},"line",1,[59,64,66],{"class":65},"szBVR","#include",[59,68,70],{"class":69},"sZZnC"," \u003Cstdio.h>\n",[59,72,74],{"class":61,"line":73},2,[59,75,77],{"emptyLinePlaceholder":76},true,"\n",[59,79,81,84,88,92,95,99,102,104,107],{"class":61,"line":80},3,[59,82,83],{"class":65}," int",[59,85,87],{"class":86},"sScJk"," add",[59,89,91],{"class":90},"sVt8B","(",[59,93,94],{"class":65},"int",[59,96,98],{"class":97},"s4XuR"," a",[59,100,101],{"class":90},",",[59,103,94],{"class":65},[59,105,106],{"class":97}," b",[59,108,109],{"class":90},");\n",[59,111,113],{"class":61,"line":112},4,[59,114,77],{"emptyLinePlaceholder":76},[59,116,118,120,123],{"class":61,"line":117},5,[59,119,94],{"class":65},[59,121,122],{"class":86}," main",[59,124,125],{"class":90}," ()\n",[59,127,129],{"class":61,"line":128},6,[59,130,131],{"class":90},"{\n",[59,133,135],{"class":61,"line":134},7,[59,136,138],{"class":137},"sJ8bj","  \u002F* 局部变量声明 *\u002F\n",[59,140,142,145],{"class":61,"line":141},8,[59,143,144],{"class":65},"  int",[59,146,147],{"class":90}," a, b;\n",[59,149,151,153],{"class":61,"line":150},9,[59,152,144],{"class":65},[59,154,155],{"class":90}," c;\n",[59,157,159],{"class":61,"line":158},10,[59,160,77],{"emptyLinePlaceholder":76},[59,162,164],{"class":61,"line":163},11,[59,165,166],{"class":137},"  \u002F* 实际初始化 *\u002F\n",[59,168,170,173,176,180],{"class":61,"line":169},12,[59,171,172],{"class":90},"  a ",[59,174,175],{"class":65},"=",[59,177,179],{"class":178},"sj4cs"," 10",[59,181,182],{"class":90},";\n",[59,184,186,189,191,194],{"class":61,"line":185},13,[59,187,188],{"class":90},"  b ",[59,190,175],{"class":65},[59,192,193],{"class":178}," 20",[59,195,182],{"class":90},[59,197,199,202,204,206],{"class":61,"line":198},14,[59,200,201],{"class":90},"  c ",[59,203,175],{"class":65},[59,205,87],{"class":86},[59,207,208],{"class":90},"(a,b);\n",[59,210,212],{"class":61,"line":211},15,[59,213,77],{"emptyLinePlaceholder":76},[59,215,217,220,223,226,229,232,234,237,240,243],{"class":61,"line":216},16,[59,218,219],{"class":86},"  printf",[59,221,222],{"class":90}," (",[59,224,225],{"class":69},"\"value of a = ",[59,227,228],{"class":178},"%d",[59,230,231],{"class":69},", b = ",[59,233,228],{"class":178},[59,235,236],{"class":69}," and c = ",[59,238,239],{"class":178},"%d\\n",[59,241,242],{"class":69},"\"",[59,244,245],{"class":90},", a, b, c);\n",[59,247,249],{"class":61,"line":248},17,[59,250,77],{"emptyLinePlaceholder":76},[59,252,254,257,260],{"class":61,"line":253},18,[59,255,256],{"class":65},"  return",[59,258,259],{"class":178}," 0",[59,261,182],{"class":90},[59,263,265],{"class":61,"line":264},19,[59,266,267],{"class":90},"}\n",[59,269,271],{"class":61,"line":270},20,[59,272,77],{"emptyLinePlaceholder":76},[59,274,276,278,280,282,284,287,289,291,294],{"class":61,"line":275},21,[59,277,94],{"class":65},[59,279,87],{"class":86},[59,281,91],{"class":90},[59,283,94],{"class":65},[59,285,286],{"class":97}," x",[59,288,101],{"class":90},[59,290,94],{"class":65},[59,292,293],{"class":97}," y",[59,295,296],{"class":90},")\n",[59,298,300],{"class":61,"line":299},22,[59,301,131],{"class":90},[59,303,305,308,311,313,316,319],{"class":61,"line":304},23,[59,306,307],{"class":65},"    int",[59,309,310],{"class":90}," z ",[59,312,175],{"class":65},[59,314,315],{"class":90}," x ",[59,317,318],{"class":65},"+",[59,320,321],{"class":90}," y;\n",[59,323,325,328],{"class":61,"line":324},24,[59,326,327],{"class":65},"    return",[59,329,330],{"class":90}," z;\n",[59,332,334],{"class":61,"line":333},25,[59,335,267],{"class":90},[18,337,338,341],{},[38,339,340],{},"运行\u002F观察结果："," 运行后会按输出语句打印对应内容，变量值可结合初始化、赋值和函数调用顺序推导。",[32,343,344],{"start":73},[35,345,346,347],{},"全局变量",[32,348,349,352],{},[35,350,351],{},"位置：全局变量是定义在函数外部，通常是在程序的顶部。",[35,353,354],{},"作用域：全局变量在整个程序生命周期内都是有效的，在任意的函数内部能访问全局变量。",[50,356,358],{"className":52,"code":357,"language":54,"meta":26,"style":26},"#include \u003Cstdio.h>\n\n\u002F* 全局变量声明 *\u002F\nint g;\n\nint main ()\n{\n  \u002F* 局部变量声明 *\u002F\n  int a;\n\n  \u002F* 静态(全局)变量声明 *\u002F\n  static int b;\n\n  \u002F* 实际初始化 *\u002F\n  a = 10;\n  b = 20;\n  g = a + b;\n\n  printf (\"value of a = %d, b = %d and g = %d\\n\", a, b, g);\n\n  return 0;\n}\n",[56,359,360,366,370,375,382,386,394,398,402,409,413,418,428,432,436,446,456,470,474,498,502,510],{"__ignoreMap":26},[59,361,362,364],{"class":61,"line":62},[59,363,66],{"class":65},[59,365,70],{"class":69},[59,367,368],{"class":61,"line":73},[59,369,77],{"emptyLinePlaceholder":76},[59,371,372],{"class":61,"line":80},[59,373,374],{"class":137},"\u002F* 全局变量声明 *\u002F\n",[59,376,377,379],{"class":61,"line":112},[59,378,94],{"class":65},[59,380,381],{"class":90}," g;\n",[59,383,384],{"class":61,"line":117},[59,385,77],{"emptyLinePlaceholder":76},[59,387,388,390,392],{"class":61,"line":128},[59,389,94],{"class":65},[59,391,122],{"class":86},[59,393,125],{"class":90},[59,395,396],{"class":61,"line":134},[59,397,131],{"class":90},[59,399,400],{"class":61,"line":141},[59,401,138],{"class":137},[59,403,404,406],{"class":61,"line":150},[59,405,144],{"class":65},[59,407,408],{"class":90}," a;\n",[59,410,411],{"class":61,"line":158},[59,412,77],{"emptyLinePlaceholder":76},[59,414,415],{"class":61,"line":163},[59,416,417],{"class":137},"  \u002F* 静态(全局)变量声明 *\u002F\n",[59,419,420,423,425],{"class":61,"line":169},[59,421,422],{"class":65},"  static",[59,424,83],{"class":65},[59,426,427],{"class":90}," b;\n",[59,429,430],{"class":61,"line":185},[59,431,77],{"emptyLinePlaceholder":76},[59,433,434],{"class":61,"line":198},[59,435,166],{"class":137},[59,437,438,440,442,444],{"class":61,"line":211},[59,439,172],{"class":90},[59,441,175],{"class":65},[59,443,179],{"class":178},[59,445,182],{"class":90},[59,447,448,450,452,454],{"class":61,"line":216},[59,449,188],{"class":90},[59,451,175],{"class":65},[59,453,193],{"class":178},[59,455,182],{"class":90},[59,457,458,461,463,466,468],{"class":61,"line":248},[59,459,460],{"class":90},"  g ",[59,462,175],{"class":65},[59,464,465],{"class":90}," a ",[59,467,318],{"class":65},[59,469,427],{"class":90},[59,471,472],{"class":61,"line":253},[59,473,77],{"emptyLinePlaceholder":76},[59,475,476,478,480,482,484,486,488,491,493,495],{"class":61,"line":264},[59,477,219],{"class":86},[59,479,222],{"class":90},[59,481,225],{"class":69},[59,483,228],{"class":178},[59,485,231],{"class":69},[59,487,228],{"class":178},[59,489,490],{"class":69}," and g = ",[59,492,239],{"class":178},[59,494,242],{"class":69},[59,496,497],{"class":90},", a, b, g);\n",[59,499,500],{"class":61,"line":270},[59,501,77],{"emptyLinePlaceholder":76},[59,503,504,506,508],{"class":61,"line":275},[59,505,256],{"class":65},[59,507,259],{"class":178},[59,509,182],{"class":90},[59,511,512],{"class":61,"line":299},[59,513,267],{"class":90},[18,515,516,341],{},[38,517,340],{},[18,519,520],{},"在程序中，局部变量和全局变量的名称可以相同，但是在函数内，如果两个名字相同，会使用局部变量值，全局变量不会被使用。",[50,522,524],{"className":52,"code":523,"language":54,"meta":26,"style":26},"#include \u003Cstdio.h>\n\n void tset();\n\u002F* 全局变量声明 *\u002F\nint g = 20;\n\nint main ()\n{\n  \u002F* 局部变量声明 *\u002F\n  int g = 10;\n\n  printf (\"value of g = %d\\n\",  g);\n\n  test();\n\n  return 0;\n}\n\nvoid test()\n{\n    printf(\"value of g = %d\\n\",g);\n}\n",[56,525,526,532,536,547,551,564,568,576,580,584,596,600,616,620,627,631,639,643,647,658,662,678],{"__ignoreMap":26},[59,527,528,530],{"class":61,"line":62},[59,529,66],{"class":65},[59,531,70],{"class":69},[59,533,534],{"class":61,"line":73},[59,535,77],{"emptyLinePlaceholder":76},[59,537,538,541,544],{"class":61,"line":80},[59,539,540],{"class":65}," void",[59,542,543],{"class":86}," tset",[59,545,546],{"class":90},"();\n",[59,548,549],{"class":61,"line":112},[59,550,374],{"class":137},[59,552,553,555,558,560,562],{"class":61,"line":117},[59,554,94],{"class":65},[59,556,557],{"class":90}," g ",[59,559,175],{"class":65},[59,561,193],{"class":178},[59,563,182],{"class":90},[59,565,566],{"class":61,"line":128},[59,567,77],{"emptyLinePlaceholder":76},[59,569,570,572,574],{"class":61,"line":134},[59,571,94],{"class":65},[59,573,122],{"class":86},[59,575,125],{"class":90},[59,577,578],{"class":61,"line":141},[59,579,131],{"class":90},[59,581,582],{"class":61,"line":150},[59,583,138],{"class":137},[59,585,586,588,590,592,594],{"class":61,"line":158},[59,587,144],{"class":65},[59,589,557],{"class":90},[59,591,175],{"class":65},[59,593,179],{"class":178},[59,595,182],{"class":90},[59,597,598],{"class":61,"line":163},[59,599,77],{"emptyLinePlaceholder":76},[59,601,602,604,606,609,611,613],{"class":61,"line":169},[59,603,219],{"class":86},[59,605,222],{"class":90},[59,607,608],{"class":69},"\"value of g = ",[59,610,239],{"class":178},[59,612,242],{"class":69},[59,614,615],{"class":90},",  g);\n",[59,617,618],{"class":61,"line":185},[59,619,77],{"emptyLinePlaceholder":76},[59,621,622,625],{"class":61,"line":198},[59,623,624],{"class":86},"  test",[59,626,546],{"class":90},[59,628,629],{"class":61,"line":211},[59,630,77],{"emptyLinePlaceholder":76},[59,632,633,635,637],{"class":61,"line":216},[59,634,256],{"class":65},[59,636,259],{"class":178},[59,638,182],{"class":90},[59,640,641],{"class":61,"line":248},[59,642,267],{"class":90},[59,644,645],{"class":61,"line":253},[59,646,77],{"emptyLinePlaceholder":76},[59,648,649,652,655],{"class":61,"line":264},[59,650,651],{"class":65},"void",[59,653,654],{"class":86}," test",[59,656,657],{"class":90},"()\n",[59,659,660],{"class":61,"line":270},[59,661,131],{"class":90},[59,663,664,667,669,671,673,675],{"class":61,"line":275},[59,665,666],{"class":86},"    printf",[59,668,91],{"class":90},[59,670,608],{"class":69},[59,672,239],{"class":178},[59,674,242],{"class":69},[59,676,677],{"class":90},",g);\n",[59,679,680],{"class":61,"line":299},[59,681,267],{"class":90},[18,683,684,341],{},[38,685,340],{},[14,687,688],{"id":688},"内存四区",[18,690,691],{},"暂时无法在飞书文档外展示此内容",[32,693,694,700,706,712],{},[35,695,696,699],{},[38,697,698],{},"静态存储区（全局区）"," ：可以分为rodata区data区和bss区，已经初始化的只读常量被放在rodata,已经被初始化的非零变量被放在data区;没有被初始化的或者值为零的变量被放在bss区，通常默认初始化为 0(表示数字的数据类型)，'\\0'(char类型) 和 NULL(指针类型)。",[35,701,702,705],{},[38,703,704],{},"栈区（stack）"," ：局部变量被存放在该区，如果不初始化局部变量，那么局部变量是随机值。容量很小。",[35,707,708,711],{},[38,709,710],{},"堆区（heap）"," ：由程序员开辟内存空间给变量，由程序员分配和释放，如果程序员不进行释放内存，则会内存泄漏，当程序结束后，系统会帮忙释放没有被释放的内存。",[35,713,714,717],{},[38,715,716],{},"代码区"," ：存放 CPU 执行的机器指令，通常是只读的。",[10,719,720],{"id":720},"内存分区模型",[18,722,723,724],{},"C++程序在执行时，将内存大方向划分为",[38,725,726],{},"4个区域",[728,729,730,733,736,739],"ul",{},[35,731,732],{},"代码区：存放函数体的二进制代码，由操作系统进行管理的",[35,734,735],{},"全局区：存放全局变量和静态变量以及常量",[35,737,738],{},"栈区：由编译器自动分配释放, 存放函数的参数值,局部变量等",[35,740,741],{},"堆区：由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收",[18,743,744],{},[38,745,746],{},"内存四区意义：",[18,748,749],{},"不同区域存放的数据，赋予不同的生命周期, 给我们更大的灵活编程",[14,751,752],{"id":752},"程序运行前",[18,754,755,756,759],{},"​\t在程序编译后，生成了exe可执行程序，",[38,757,758],{},"未执行该程序前","分为两个区域",[18,761,762,763],{},"​\t",[38,764,765],{},"代码区：",[18,767,768],{},"​\t\t存放 CPU 执行的机器指令",[18,770,771,772,775],{},"​\t\t代码区是",[38,773,774],{},"共享","的，共享的目的是对于频繁被执行的程序，只需要在内存中有一份代码即可",[18,777,771,778,781],{},[38,779,780],{},"只读","的，使其只读的原因是防止程序意外地修改了它的指令",[18,783,762,784],{},[38,785,786],{},"全局区：",[18,788,789],{},"​\t\t全局变量和静态变量存放在此.",[18,791,792],{},"​\t\t全局区还包含了常量区, 字符串常量和其他常量也存放在此.",[18,794,795],{},"​\t\t==该区域的数据在程序结束后由操作系统释放==.",[18,797,798],{},[38,799,800],{},"示例：",[50,802,804],{"className":52,"code":803,"language":54,"meta":26,"style":26},"\u002F\u002F全局变量\nint g_a = 10;\nint g_b = 10;\n\n\u002F\u002F全局常量\nconst int c_g_a = 10;\nconst int c_g_b = 10;\n\nint main() {\n\n    \u002F\u002F局部变量\n    int a = 10;\n    int b = 10;\n\n    \u002F\u002F打印地址\n    cout \u003C\u003C \"局部变量a地址为： \" \u003C\u003C &a \u003C\u003C endl;\n    cout \u003C\u003C \"局部变量b地址为： \" \u003C\u003C &b \u003C\u003C endl;\n\n    cout \u003C\u003C \"全局变量g_a地址为： \" \u003C\u003C  &g_a \u003C\u003C endl;\n    cout \u003C\u003C \"全局变量g_b地址为： \" \u003C\u003C  &g_b \u003C\u003C endl;\n\n    \u002F\u002F静态变量\n    static int s_a = 10;\n    static int s_b = 10;\n\n    cout \u003C\u003C \"静态变量s_a地址为： \" \u003C\u003C &s_a \u003C\u003C endl;\n    cout \u003C\u003C \"静态变量s_b地址为： \" \u003C\u003C &s_b \u003C\u003C endl;\n\n    cout \u003C\u003C \"字符串常量地址为： \" \u003C\u003C static_cast\u003Cconst void*>(\"hello world\") \u003C\u003C endl;\n    cout \u003C\u003C \"字符串常量地址为： \" \u003C\u003C static_cast\u003Cconst void*>(\"hello world1\") \u003C\u003C endl;\n\n    cout \u003C\u003C \"全局常量c_g_a地址为： \" \u003C\u003C &c_g_a \u003C\u003C endl;\n    cout \u003C\u003C \"全局常量c_g_b地址为： \" \u003C\u003C &c_g_b \u003C\u003C endl;\n\n    const int c_l_a = 10;\n    const int c_l_b = 10;\n    cout \u003C\u003C \"局部常量c_l_a地址为： \" \u003C\u003C &c_l_a \u003C\u003C endl;\n    cout \u003C\u003C \"局部常量c_l_b地址为： \" \u003C\u003C &c_l_b \u003C\u003C endl;\n\n\n    return 0;\n}\n",[56,805,806,811,824,837,841,846,862,877,881,890,894,899,911,924,928,933,958,978,982,1003,1023,1027,1032,1048,1063,1067,1088,1109,1114,1144,1170,1175,1196,1217,1222,1239,1255,1276,1297,1302,1307,1316],{"__ignoreMap":26},[59,807,808],{"class":61,"line":62},[59,809,810],{"class":137},"\u002F\u002F全局变量\n",[59,812,813,815,818,820,822],{"class":61,"line":73},[59,814,94],{"class":65},[59,816,817],{"class":90}," g_a ",[59,819,175],{"class":65},[59,821,179],{"class":178},[59,823,182],{"class":90},[59,825,826,828,831,833,835],{"class":61,"line":80},[59,827,94],{"class":65},[59,829,830],{"class":90}," g_b ",[59,832,175],{"class":65},[59,834,179],{"class":178},[59,836,182],{"class":90},[59,838,839],{"class":61,"line":112},[59,840,77],{"emptyLinePlaceholder":76},[59,842,843],{"class":61,"line":117},[59,844,845],{"class":137},"\u002F\u002F全局常量\n",[59,847,848,851,853,856,858,860],{"class":61,"line":128},[59,849,850],{"class":65},"const",[59,852,83],{"class":65},[59,854,855],{"class":90}," c_g_a ",[59,857,175],{"class":65},[59,859,179],{"class":178},[59,861,182],{"class":90},[59,863,864,866,868,871,873,875],{"class":61,"line":134},[59,865,850],{"class":65},[59,867,83],{"class":65},[59,869,870],{"class":90}," c_g_b ",[59,872,175],{"class":65},[59,874,179],{"class":178},[59,876,182],{"class":90},[59,878,879],{"class":61,"line":141},[59,880,77],{"emptyLinePlaceholder":76},[59,882,883,885,887],{"class":61,"line":150},[59,884,94],{"class":65},[59,886,122],{"class":86},[59,888,889],{"class":90},"() {\n",[59,891,892],{"class":61,"line":158},[59,893,77],{"emptyLinePlaceholder":76},[59,895,896],{"class":61,"line":163},[59,897,898],{"class":137},"    \u002F\u002F局部变量\n",[59,900,901,903,905,907,909],{"class":61,"line":169},[59,902,307],{"class":65},[59,904,465],{"class":90},[59,906,175],{"class":65},[59,908,179],{"class":178},[59,910,182],{"class":90},[59,912,913,915,918,920,922],{"class":61,"line":185},[59,914,307],{"class":65},[59,916,917],{"class":90}," b ",[59,919,175],{"class":65},[59,921,179],{"class":178},[59,923,182],{"class":90},[59,925,926],{"class":61,"line":198},[59,927,77],{"emptyLinePlaceholder":76},[59,929,930],{"class":61,"line":211},[59,931,932],{"class":137},"    \u002F\u002F打印地址\n",[59,934,935,938,941,944,947,950,953,955],{"class":61,"line":216},[59,936,937],{"class":90},"    cout ",[59,939,940],{"class":65},"\u003C\u003C",[59,942,943],{"class":69}," \"局部变量a地址为： \"",[59,945,946],{"class":65}," \u003C\u003C",[59,948,949],{"class":65}," &",[59,951,952],{"class":90},"a ",[59,954,940],{"class":65},[59,956,957],{"class":90}," endl;\n",[59,959,960,962,964,967,969,971,974,976],{"class":61,"line":248},[59,961,937],{"class":90},[59,963,940],{"class":65},[59,965,966],{"class":69}," \"局部变量b地址为： \"",[59,968,946],{"class":65},[59,970,949],{"class":65},[59,972,973],{"class":90},"b ",[59,975,940],{"class":65},[59,977,957],{"class":90},[59,979,980],{"class":61,"line":253},[59,981,77],{"emptyLinePlaceholder":76},[59,983,984,986,988,991,993,996,999,1001],{"class":61,"line":264},[59,985,937],{"class":90},[59,987,940],{"class":65},[59,989,990],{"class":69}," \"全局变量g_a地址为： \"",[59,992,946],{"class":65},[59,994,995],{"class":65},"  &",[59,997,998],{"class":90},"g_a ",[59,1000,940],{"class":65},[59,1002,957],{"class":90},[59,1004,1005,1007,1009,1012,1014,1016,1019,1021],{"class":61,"line":270},[59,1006,937],{"class":90},[59,1008,940],{"class":65},[59,1010,1011],{"class":69}," \"全局变量g_b地址为： \"",[59,1013,946],{"class":65},[59,1015,995],{"class":65},[59,1017,1018],{"class":90},"g_b ",[59,1020,940],{"class":65},[59,1022,957],{"class":90},[59,1024,1025],{"class":61,"line":275},[59,1026,77],{"emptyLinePlaceholder":76},[59,1028,1029],{"class":61,"line":299},[59,1030,1031],{"class":137},"    \u002F\u002F静态变量\n",[59,1033,1034,1037,1039,1042,1044,1046],{"class":61,"line":304},[59,1035,1036],{"class":65},"    static",[59,1038,83],{"class":65},[59,1040,1041],{"class":90}," s_a ",[59,1043,175],{"class":65},[59,1045,179],{"class":178},[59,1047,182],{"class":90},[59,1049,1050,1052,1054,1057,1059,1061],{"class":61,"line":324},[59,1051,1036],{"class":65},[59,1053,83],{"class":65},[59,1055,1056],{"class":90}," s_b ",[59,1058,175],{"class":65},[59,1060,179],{"class":178},[59,1062,182],{"class":90},[59,1064,1065],{"class":61,"line":333},[59,1066,77],{"emptyLinePlaceholder":76},[59,1068,1070,1072,1074,1077,1079,1081,1084,1086],{"class":61,"line":1069},26,[59,1071,937],{"class":90},[59,1073,940],{"class":65},[59,1075,1076],{"class":69}," \"静态变量s_a地址为： \"",[59,1078,946],{"class":65},[59,1080,949],{"class":65},[59,1082,1083],{"class":90},"s_a ",[59,1085,940],{"class":65},[59,1087,957],{"class":90},[59,1089,1091,1093,1095,1098,1100,1102,1105,1107],{"class":61,"line":1090},27,[59,1092,937],{"class":90},[59,1094,940],{"class":65},[59,1096,1097],{"class":69}," \"静态变量s_b地址为： \"",[59,1099,946],{"class":65},[59,1101,949],{"class":65},[59,1103,1104],{"class":90},"s_b ",[59,1106,940],{"class":65},[59,1108,957],{"class":90},[59,1110,1112],{"class":61,"line":1111},28,[59,1113,77],{"emptyLinePlaceholder":76},[59,1115,1117,1119,1121,1124,1126,1129,1132,1134,1137,1140,1142],{"class":61,"line":1116},29,[59,1118,937],{"class":90},[59,1120,940],{"class":65},[59,1122,1123],{"class":69}," \"字符串常量地址为： \"",[59,1125,946],{"class":65},[59,1127,1128],{"class":65}," static_cast\u003Cconst",[59,1130,1131],{"class":65}," void*>",[59,1133,91],{"class":90},[59,1135,1136],{"class":69},"\"hello world\"",[59,1138,1139],{"class":90},") ",[59,1141,940],{"class":65},[59,1143,957],{"class":90},[59,1145,1147,1149,1151,1153,1155,1157,1159,1161,1164,1166,1168],{"class":61,"line":1146},30,[59,1148,937],{"class":90},[59,1150,940],{"class":65},[59,1152,1123],{"class":69},[59,1154,946],{"class":65},[59,1156,1128],{"class":65},[59,1158,1131],{"class":65},[59,1160,91],{"class":90},[59,1162,1163],{"class":69},"\"hello world1\"",[59,1165,1139],{"class":90},[59,1167,940],{"class":65},[59,1169,957],{"class":90},[59,1171,1173],{"class":61,"line":1172},31,[59,1174,77],{"emptyLinePlaceholder":76},[59,1176,1178,1180,1182,1185,1187,1189,1192,1194],{"class":61,"line":1177},32,[59,1179,937],{"class":90},[59,1181,940],{"class":65},[59,1183,1184],{"class":69}," \"全局常量c_g_a地址为： \"",[59,1186,946],{"class":65},[59,1188,949],{"class":65},[59,1190,1191],{"class":90},"c_g_a ",[59,1193,940],{"class":65},[59,1195,957],{"class":90},[59,1197,1199,1201,1203,1206,1208,1210,1213,1215],{"class":61,"line":1198},33,[59,1200,937],{"class":90},[59,1202,940],{"class":65},[59,1204,1205],{"class":69}," \"全局常量c_g_b地址为： \"",[59,1207,946],{"class":65},[59,1209,949],{"class":65},[59,1211,1212],{"class":90},"c_g_b ",[59,1214,940],{"class":65},[59,1216,957],{"class":90},[59,1218,1220],{"class":61,"line":1219},34,[59,1221,77],{"emptyLinePlaceholder":76},[59,1223,1225,1228,1230,1233,1235,1237],{"class":61,"line":1224},35,[59,1226,1227],{"class":65},"    const",[59,1229,83],{"class":65},[59,1231,1232],{"class":90}," c_l_a ",[59,1234,175],{"class":65},[59,1236,179],{"class":178},[59,1238,182],{"class":90},[59,1240,1242,1244,1246,1249,1251,1253],{"class":61,"line":1241},36,[59,1243,1227],{"class":65},[59,1245,83],{"class":65},[59,1247,1248],{"class":90}," c_l_b ",[59,1250,175],{"class":65},[59,1252,179],{"class":178},[59,1254,182],{"class":90},[59,1256,1258,1260,1262,1265,1267,1269,1272,1274],{"class":61,"line":1257},37,[59,1259,937],{"class":90},[59,1261,940],{"class":65},[59,1263,1264],{"class":69}," \"局部常量c_l_a地址为： \"",[59,1266,946],{"class":65},[59,1268,949],{"class":65},[59,1270,1271],{"class":90},"c_l_a ",[59,1273,940],{"class":65},[59,1275,957],{"class":90},[59,1277,1279,1281,1283,1286,1288,1290,1293,1295],{"class":61,"line":1278},38,[59,1280,937],{"class":90},[59,1282,940],{"class":65},[59,1284,1285],{"class":69}," \"局部常量c_l_b地址为： \"",[59,1287,946],{"class":65},[59,1289,949],{"class":65},[59,1291,1292],{"class":90},"c_l_b ",[59,1294,940],{"class":65},[59,1296,957],{"class":90},[59,1298,1300],{"class":61,"line":1299},39,[59,1301,77],{"emptyLinePlaceholder":76},[59,1303,1305],{"class":61,"line":1304},40,[59,1306,77],{"emptyLinePlaceholder":76},[59,1308,1310,1312,1314],{"class":61,"line":1309},41,[59,1311,327],{"class":65},[59,1313,259],{"class":178},[59,1315,182],{"class":90},[59,1317,1319],{"class":61,"line":1318},42,[59,1320,267],{"class":90},[18,1322,1323,1326],{},[38,1324,1325],{},"运行结果","：见下方打印结果图；地址值每次运行可能不同，重点观察局部变量、全局变量、静态变量和常量所在区域的相对差异。",[18,1328,1329],{},"打印结果：",[18,1331,1332],{},[24,1333],{"alt":1334,"src":1335},"1545017602518","https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F10\u002F05\u002Fstage3-1545017602518-13a27cfbf5.webp",[18,1337,1338],{},"总结：",[728,1340,1341,1344,1347,1350],{},[35,1342,1343],{},"C++中在程序运行前分为全局区和代码区",[35,1345,1346],{},"代码区特点是共享和只读",[35,1348,1349],{},"全局区中存放全局变量、静态变量、常量",[35,1351,1352],{},"常量区中存放 const修饰的全局常量  和 字符串常量",[14,1354,1355],{"id":1355},"程序运行后",[18,1357,762,1358],{},[38,1359,1360],{},"栈区：",[18,1362,1363],{},"​\t\t由编译器自动分配释放, 存放函数的参数值,局部变量等",[18,1365,1366],{},"​\t\t注意事项：不要返回局部变量的地址，栈区开辟的数据由编译器自动释放",[18,1368,1369],{},[38,1370,800],{},[50,1372,1374],{"className":52,"code":1373,"language":54,"meta":26,"style":26},"int * func()\n{\n    int a = 10;\n    return &a;\n}\n\nint main() {\n    \u002F\u002F 程序从 main 函数开始执行，下面的语句会按顺序运行。\n\n    int *p = func();\n\n    cout \u003C\u003C *p \u003C\u003C endl;\n    cout \u003C\u003C *p \u003C\u003C endl;\n\n\n    \u002F\u002F 返回 0 表示程序正常结束。\n    return 0;\n}\n",[56,1375,1376,1388,1392,1404,1413,1417,1421,1429,1434,1438,1453,1457,1471,1485,1489,1493,1498,1506],{"__ignoreMap":26},[59,1377,1378,1380,1383,1386],{"class":61,"line":62},[59,1379,94],{"class":65},[59,1381,1382],{"class":65}," *",[59,1384,1385],{"class":86}," func",[59,1387,657],{"class":90},[59,1389,1390],{"class":61,"line":73},[59,1391,131],{"class":90},[59,1393,1394,1396,1398,1400,1402],{"class":61,"line":80},[59,1395,307],{"class":65},[59,1397,465],{"class":90},[59,1399,175],{"class":65},[59,1401,179],{"class":178},[59,1403,182],{"class":90},[59,1405,1406,1408,1410],{"class":61,"line":112},[59,1407,327],{"class":65},[59,1409,949],{"class":65},[59,1411,1412],{"class":90},"a;\n",[59,1414,1415],{"class":61,"line":117},[59,1416,267],{"class":90},[59,1418,1419],{"class":61,"line":128},[59,1420,77],{"emptyLinePlaceholder":76},[59,1422,1423,1425,1427],{"class":61,"line":134},[59,1424,94],{"class":65},[59,1426,122],{"class":86},[59,1428,889],{"class":90},[59,1430,1431],{"class":61,"line":141},[59,1432,1433],{"class":137},"    \u002F\u002F 程序从 main 函数开始执行，下面的语句会按顺序运行。\n",[59,1435,1436],{"class":61,"line":150},[59,1437,77],{"emptyLinePlaceholder":76},[59,1439,1440,1442,1444,1447,1449,1451],{"class":61,"line":158},[59,1441,307],{"class":65},[59,1443,1382],{"class":65},[59,1445,1446],{"class":90},"p ",[59,1448,175],{"class":65},[59,1450,1385],{"class":86},[59,1452,546],{"class":90},[59,1454,1455],{"class":61,"line":163},[59,1456,77],{"emptyLinePlaceholder":76},[59,1458,1459,1461,1463,1465,1467,1469],{"class":61,"line":169},[59,1460,937],{"class":90},[59,1462,940],{"class":65},[59,1464,1382],{"class":65},[59,1466,1446],{"class":90},[59,1468,940],{"class":65},[59,1470,957],{"class":90},[59,1472,1473,1475,1477,1479,1481,1483],{"class":61,"line":185},[59,1474,937],{"class":90},[59,1476,940],{"class":65},[59,1478,1382],{"class":65},[59,1480,1446],{"class":90},[59,1482,940],{"class":65},[59,1484,957],{"class":90},[59,1486,1487],{"class":61,"line":198},[59,1488,77],{"emptyLinePlaceholder":76},[59,1490,1491],{"class":61,"line":211},[59,1492,77],{"emptyLinePlaceholder":76},[59,1494,1495],{"class":61,"line":216},[59,1496,1497],{"class":137},"    \u002F\u002F 返回 0 表示程序正常结束。\n",[59,1499,1500,1502,1504],{"class":61,"line":248},[59,1501,327],{"class":65},[59,1503,259],{"class":178},[59,1505,182],{"class":90},[59,1507,1508],{"class":61,"line":253},[59,1509,267],{"class":90},[18,1511,1512,1514],{},[38,1513,340],{}," 运行后会打印示例中的变量值或地址；地址值与运行环境有关，以同类对象的相对位置和指针变化为观察重点。",[18,1516,762,1517],{},[38,1518,1519],{},"堆区：",[18,1521,1522],{},"​\t\t由程序员分配释放,若程序员不释放,程序结束时由操作系统回收",[18,1524,1525],{},"​\t\t在C++中主要利用new在堆区开辟内存",[18,1527,1528],{},[38,1529,800],{},[50,1531,1533],{"className":52,"code":1532,"language":54,"meta":26,"style":26},"int* func()\n{\n    int* a = new int(10);\n    return a;\n}\n\nint main() {\n    \u002F\u002F 程序从 main 函数开始执行，下面的语句会按顺序运行。\n\n    int *p = func();\n\n    cout \u003C\u003C *p \u003C\u003C endl;\n    cout \u003C\u003C *p \u003C\u003C endl;\n    \n\n    \u002F\u002F 返回 0 表示程序正常结束。\n    return 0;\n}\n",[56,1534,1535,1544,1548,1569,1575,1579,1583,1591,1595,1599,1613,1617,1631,1645,1650,1654,1658,1666],{"__ignoreMap":26},[59,1536,1537,1540,1542],{"class":61,"line":62},[59,1538,1539],{"class":65},"int*",[59,1541,1385],{"class":86},[59,1543,657],{"class":90},[59,1545,1546],{"class":61,"line":73},[59,1547,131],{"class":90},[59,1549,1550,1553,1555,1557,1560,1562,1564,1567],{"class":61,"line":80},[59,1551,1552],{"class":65},"    int*",[59,1554,465],{"class":90},[59,1556,175],{"class":65},[59,1558,1559],{"class":65}," new",[59,1561,83],{"class":65},[59,1563,91],{"class":90},[59,1565,1566],{"class":178},"10",[59,1568,109],{"class":90},[59,1570,1571,1573],{"class":61,"line":112},[59,1572,327],{"class":65},[59,1574,408],{"class":90},[59,1576,1577],{"class":61,"line":117},[59,1578,267],{"class":90},[59,1580,1581],{"class":61,"line":128},[59,1582,77],{"emptyLinePlaceholder":76},[59,1584,1585,1587,1589],{"class":61,"line":134},[59,1586,94],{"class":65},[59,1588,122],{"class":86},[59,1590,889],{"class":90},[59,1592,1593],{"class":61,"line":141},[59,1594,1433],{"class":137},[59,1596,1597],{"class":61,"line":150},[59,1598,77],{"emptyLinePlaceholder":76},[59,1600,1601,1603,1605,1607,1609,1611],{"class":61,"line":158},[59,1602,307],{"class":65},[59,1604,1382],{"class":65},[59,1606,1446],{"class":90},[59,1608,175],{"class":65},[59,1610,1385],{"class":86},[59,1612,546],{"class":90},[59,1614,1615],{"class":61,"line":163},[59,1616,77],{"emptyLinePlaceholder":76},[59,1618,1619,1621,1623,1625,1627,1629],{"class":61,"line":169},[59,1620,937],{"class":90},[59,1622,940],{"class":65},[59,1624,1382],{"class":65},[59,1626,1446],{"class":90},[59,1628,940],{"class":65},[59,1630,957],{"class":90},[59,1632,1633,1635,1637,1639,1641,1643],{"class":61,"line":185},[59,1634,937],{"class":90},[59,1636,940],{"class":65},[59,1638,1382],{"class":65},[59,1640,1446],{"class":90},[59,1642,940],{"class":65},[59,1644,957],{"class":90},[59,1646,1647],{"class":61,"line":198},[59,1648,1649],{"class":90},"    \n",[59,1651,1652],{"class":61,"line":211},[59,1653,77],{"emptyLinePlaceholder":76},[59,1655,1656],{"class":61,"line":216},[59,1657,1497],{"class":137},[59,1659,1660,1662,1664],{"class":61,"line":248},[59,1661,327],{"class":65},[59,1663,259],{"class":178},[59,1665,182],{"class":90},[59,1667,1668],{"class":61,"line":253},[59,1669,267],{"class":90},[18,1671,1672,341],{},[38,1673,340],{},[18,1675,1676],{},[38,1677,1338],{},[18,1679,1680],{},"堆区数据由程序员管理开辟和释放",[18,1682,1683],{},"堆区数据利用new关键字进行开辟内存",[14,1685,1686],{"id":1686},"new操作符",[18,1688,1689],{},"​\tC++中利用==new==操作符在堆区开辟数据",[18,1691,1692],{},"​\t堆区开辟的数据，由程序员手动开辟，手动释放，释放利用操作符 ==delete==",[18,1694,1695,1696],{},"​\t语法：",[56,1697,1698],{}," new 数据类型",[18,1700,1701],{},"​\t利用new创建的数据，会返回该数据对应的类型的指针",[18,1703,1704],{},[38,1705,1706],{},"示例1： 基本语法",[50,1708,1710],{"className":52,"code":1709,"language":54,"meta":26,"style":26},"int* func()\n{\n    int* a = new int(10);\n    return a;\n}\n\nint main() {\n\n    int *p = func();\n\n    cout \u003C\u003C *p \u003C\u003C endl;\n    cout \u003C\u003C *p \u003C\u003C endl;\n\n    \u002F\u002F利用delete释放堆区数据\n    delete p;\n\n    \u002F\u002Fcout \u003C\u003C *p \u003C\u003C endl; \u002F\u002F报错，释放的空间不可访问\n\n\n    return 0;\n}\n",[56,1711,1712,1720,1724,1742,1748,1752,1756,1764,1768,1782,1786,1800,1814,1818,1823,1831,1835,1843,1847,1851,1859],{"__ignoreMap":26},[59,1713,1714,1716,1718],{"class":61,"line":62},[59,1715,1539],{"class":65},[59,1717,1385],{"class":86},[59,1719,657],{"class":90},[59,1721,1722],{"class":61,"line":73},[59,1723,131],{"class":90},[59,1725,1726,1728,1730,1732,1734,1736,1738,1740],{"class":61,"line":80},[59,1727,1552],{"class":65},[59,1729,465],{"class":90},[59,1731,175],{"class":65},[59,1733,1559],{"class":65},[59,1735,83],{"class":65},[59,1737,91],{"class":90},[59,1739,1566],{"class":178},[59,1741,109],{"class":90},[59,1743,1744,1746],{"class":61,"line":112},[59,1745,327],{"class":65},[59,1747,408],{"class":90},[59,1749,1750],{"class":61,"line":117},[59,1751,267],{"class":90},[59,1753,1754],{"class":61,"line":128},[59,1755,77],{"emptyLinePlaceholder":76},[59,1757,1758,1760,1762],{"class":61,"line":134},[59,1759,94],{"class":65},[59,1761,122],{"class":86},[59,1763,889],{"class":90},[59,1765,1766],{"class":61,"line":141},[59,1767,77],{"emptyLinePlaceholder":76},[59,1769,1770,1772,1774,1776,1778,1780],{"class":61,"line":150},[59,1771,307],{"class":65},[59,1773,1382],{"class":65},[59,1775,1446],{"class":90},[59,1777,175],{"class":65},[59,1779,1385],{"class":86},[59,1781,546],{"class":90},[59,1783,1784],{"class":61,"line":158},[59,1785,77],{"emptyLinePlaceholder":76},[59,1787,1788,1790,1792,1794,1796,1798],{"class":61,"line":163},[59,1789,937],{"class":90},[59,1791,940],{"class":65},[59,1793,1382],{"class":65},[59,1795,1446],{"class":90},[59,1797,940],{"class":65},[59,1799,957],{"class":90},[59,1801,1802,1804,1806,1808,1810,1812],{"class":61,"line":169},[59,1803,937],{"class":90},[59,1805,940],{"class":65},[59,1807,1382],{"class":65},[59,1809,1446],{"class":90},[59,1811,940],{"class":65},[59,1813,957],{"class":90},[59,1815,1816],{"class":61,"line":185},[59,1817,77],{"emptyLinePlaceholder":76},[59,1819,1820],{"class":61,"line":198},[59,1821,1822],{"class":137},"    \u002F\u002F利用delete释放堆区数据\n",[59,1824,1825,1828],{"class":61,"line":211},[59,1826,1827],{"class":65},"    delete",[59,1829,1830],{"class":90}," p;\n",[59,1832,1833],{"class":61,"line":216},[59,1834,77],{"emptyLinePlaceholder":76},[59,1836,1837,1840],{"class":61,"line":248},[59,1838,1839],{"class":137},"    \u002F\u002Fcout \u003C\u003C *p \u003C\u003C endl;",[59,1841,1842],{"class":137}," \u002F\u002F报错，释放的空间不可访问\n",[59,1844,1845],{"class":61,"line":253},[59,1846,77],{"emptyLinePlaceholder":76},[59,1848,1849],{"class":61,"line":264},[59,1850,77],{"emptyLinePlaceholder":76},[59,1852,1853,1855,1857],{"class":61,"line":270},[59,1854,327],{"class":65},[59,1856,259],{"class":178},[59,1858,182],{"class":90},[59,1860,1861],{"class":61,"line":275},[59,1862,267],{"class":90},[18,1864,1865,341],{},[38,1866,340],{},[18,1868,1869],{},[38,1870,1871],{},"示例2：开辟数组",[50,1873,1875],{"className":52,"code":1874,"language":54,"meta":26,"style":26},"\u002F\u002F堆区开辟数组\nint main() {\n\n    int* arr = new int[10];\n\n    for (int i = 0; i \u003C 10; i++)\n    {\n        arr[i] = i + 100;\n    }\n\n    for (int i = 0; i \u003C 10; i++)\n    {\n        cout \u003C\u003C arr[i] \u003C\u003C endl;\n    }\n    \u002F\u002F释放数组 delete 后加 []\n    delete[] arr;\n\n\n    return 0;\n}\n\n",[56,1876,1877,1882,1890,1894,1915,1919,1951,1956,1972,1977,1981,2007,2011,2025,2029,2034,2042,2046,2050,2058],{"__ignoreMap":26},[59,1878,1879],{"class":61,"line":62},[59,1880,1881],{"class":137},"\u002F\u002F堆区开辟数组\n",[59,1883,1884,1886,1888],{"class":61,"line":73},[59,1885,94],{"class":65},[59,1887,122],{"class":86},[59,1889,889],{"class":90},[59,1891,1892],{"class":61,"line":80},[59,1893,77],{"emptyLinePlaceholder":76},[59,1895,1896,1898,1901,1903,1905,1907,1910,1912],{"class":61,"line":112},[59,1897,1552],{"class":65},[59,1899,1900],{"class":90}," arr ",[59,1902,175],{"class":65},[59,1904,1559],{"class":65},[59,1906,83],{"class":65},[59,1908,1909],{"class":90},"[",[59,1911,1566],{"class":178},[59,1913,1914],{"class":90},"];\n",[59,1916,1917],{"class":61,"line":117},[59,1918,77],{"emptyLinePlaceholder":76},[59,1920,1921,1924,1926,1928,1931,1933,1935,1938,1941,1943,1946,1949],{"class":61,"line":128},[59,1922,1923],{"class":65},"    for",[59,1925,222],{"class":90},[59,1927,94],{"class":65},[59,1929,1930],{"class":90}," i ",[59,1932,175],{"class":65},[59,1934,259],{"class":178},[59,1936,1937],{"class":90},"; i ",[59,1939,1940],{"class":65},"\u003C",[59,1942,179],{"class":178},[59,1944,1945],{"class":90},"; i",[59,1947,1948],{"class":65},"++",[59,1950,296],{"class":90},[59,1952,1953],{"class":61,"line":134},[59,1954,1955],{"class":90},"    {\n",[59,1957,1958,1961,1963,1965,1967,1970],{"class":61,"line":141},[59,1959,1960],{"class":90},"        arr[i] ",[59,1962,175],{"class":65},[59,1964,1930],{"class":90},[59,1966,318],{"class":65},[59,1968,1969],{"class":178}," 100",[59,1971,182],{"class":90},[59,1973,1974],{"class":61,"line":150},[59,1975,1976],{"class":90},"    }\n",[59,1978,1979],{"class":61,"line":158},[59,1980,77],{"emptyLinePlaceholder":76},[59,1982,1983,1985,1987,1989,1991,1993,1995,1997,1999,2001,2003,2005],{"class":61,"line":163},[59,1984,1923],{"class":65},[59,1986,222],{"class":90},[59,1988,94],{"class":65},[59,1990,1930],{"class":90},[59,1992,175],{"class":65},[59,1994,259],{"class":178},[59,1996,1937],{"class":90},[59,1998,1940],{"class":65},[59,2000,179],{"class":178},[59,2002,1945],{"class":90},[59,2004,1948],{"class":65},[59,2006,296],{"class":90},[59,2008,2009],{"class":61,"line":169},[59,2010,1955],{"class":90},[59,2012,2013,2016,2018,2021,2023],{"class":61,"line":185},[59,2014,2015],{"class":90},"        cout ",[59,2017,940],{"class":65},[59,2019,2020],{"class":90}," arr[i] ",[59,2022,940],{"class":65},[59,2024,957],{"class":90},[59,2026,2027],{"class":61,"line":198},[59,2028,1976],{"class":90},[59,2030,2031],{"class":61,"line":211},[59,2032,2033],{"class":137},"    \u002F\u002F释放数组 delete 后加 []\n",[59,2035,2036,2039],{"class":61,"line":216},[59,2037,2038],{"class":65},"    delete[]",[59,2040,2041],{"class":90}," arr;\n",[59,2043,2044],{"class":61,"line":248},[59,2045,77],{"emptyLinePlaceholder":76},[59,2047,2048],{"class":61,"line":253},[59,2049,77],{"emptyLinePlaceholder":76},[59,2051,2052,2054,2056],{"class":61,"line":264},[59,2053,327],{"class":65},[59,2055,259],{"class":178},[59,2057,182],{"class":90},[59,2059,2060],{"class":61,"line":270},[59,2061,267],{"class":90},[18,2063,2064,341],{},[38,2065,340],{},[2067,2068,2069],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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);}",{"title":26,"searchDepth":73,"depth":73,"links":2071},[2072,2077],{"id":12,"depth":73,"text":12,"children":2073},[2074,2075,2076],{"id":16,"depth":80,"text":16},{"id":30,"depth":80,"text":30},{"id":688,"depth":80,"text":688},{"id":720,"depth":73,"text":720,"children":2078},[2079,2080,2081],{"id":752,"depth":80,"text":752},{"id":1355,"depth":80,"text":1355},{"id":1686,"depth":80,"text":1686},0,"1100","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\u002F1100-nei-cun-fen-qu-yu-sheng-ming-zhou-qi",{"title":5,"description":26},"wiki\u002F2023-10-05-Cplusplus教学\u002F1100-内存分区与生命周期","eu6PmBsDZZKrlmaYdrAk2BdIpurQE6mnDsIahWOXOHQ",[2096,2101,2106,2111,2116,2121,2126,2131,2136,2141,2146,2147,2152,2157,2162,2167,2172,2177,2182,2187,2192,2197,2202,2207,2212,2217,2222,2227,2232,2237,2242,2247,2252,2257,2262,2267,2272,2277,2282,2287,2292,2297,2302,2307,2312,2317,2322,2327,2332,2337,2342,2347,2352,2357,2362,2367,2372,2377,2382,2387,2392,2397,2402,2407,2412,2417,2422,2427,2432,2437,2442,2447,2452,2457,2462,2467,2472,2477],{"path":2097,"stem":2098,"title":2099,"date":2084,"chapterOrder":2100,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0100-c-kai-fa-huan-jing-da-jian-yu-ce-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F0100-C++开发环境搭建与测试","C++开发环境搭建与测试","0100",{"path":2102,"stem":2103,"title":2104,"date":2084,"chapterOrder":2105,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0200-c-ji-chu-chu-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F0200-C++基础初识","C++基础初识","0200",{"path":2107,"stem":2108,"title":2109,"date":2084,"chapterOrder":2110,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0300-shu-ju-lei-xing-yu-shu-ju-cun-fang","wiki\u002F2023-10-05-Cplusplus教学\u002F0300-数据类型与数据存放","数据类型与数据存放","0300",{"path":2112,"stem":2113,"title":2114,"date":2084,"chapterOrder":2115,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0400-shu-ru-shu-chu","wiki\u002F2023-10-05-Cplusplus教学\u002F0400-输入输出","输入输出","0400",{"path":2117,"stem":2118,"title":2119,"date":2084,"chapterOrder":2120,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0500-yun-suan-fu","wiki\u002F2023-10-05-Cplusplus教学\u002F0500-运算符","运算符","0500",{"path":2122,"stem":2123,"title":2124,"date":2084,"chapterOrder":2125,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0600-cheng-xu-liu-cheng-jie-gou","wiki\u002F2023-10-05-Cplusplus教学\u002F0600-程序流程结构","程序流程结构","0600",{"path":2127,"stem":2128,"title":2129,"date":2084,"chapterOrder":2130,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0700-shu-zu","wiki\u002F2023-10-05-Cplusplus教学\u002F0700-数组","数组","0700",{"path":2132,"stem":2133,"title":2134,"date":2084,"chapterOrder":2135,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0800-han-shu-yu-tou-wen-jian","wiki\u002F2023-10-05-Cplusplus教学\u002F0800-函数与头文件","函数与头文件","0800",{"path":2137,"stem":2138,"title":2139,"date":2084,"chapterOrder":2140,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0900-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F0900-指针","指针","0900",{"path":2142,"stem":2143,"title":2144,"date":2084,"chapterOrder":2145,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1000-jie-gou-ti-yu-gong-yong-ti","wiki\u002F2023-10-05-Cplusplus教学\u002F1000-结构体与共用体","结构体与共用体","1000",{"path":2091,"stem":2093,"title":5,"date":2084,"chapterOrder":2083,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},{"path":2148,"stem":2149,"title":2150,"date":2084,"chapterOrder":2151,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1200-yin-yong","wiki\u002F2023-10-05-Cplusplus教学\u002F1200-引用","引用","1200",{"path":2153,"stem":2154,"title":2155,"date":2084,"chapterOrder":2156,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1300-han-shu-ti-gao-yu-ming-ming-kong-jian","wiki\u002F2023-10-05-Cplusplus教学\u002F1300-函数提高与命名空间","函数提高与命名空间","1300",{"path":2158,"stem":2159,"title":2160,"date":2084,"chapterOrder":2161,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0100-feng-zhuang","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0100-封装","封装","1400-0100",{"path":2163,"stem":2164,"title":2165,"date":2084,"chapterOrder":2166,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0200-dui-xiang-chu-shi-hua-he-qing-li","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0200-对象初始化和清理","对象初始化和清理","1400-0200",{"path":2168,"stem":2169,"title":2170,"date":2084,"chapterOrder":2171,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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指针","1400-0300",{"path":2173,"stem":2174,"title":2175,"date":2084,"chapterOrder":2176,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0400-you-yuan-yu-yun-suan-fu-zhong-zai","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0400-友元与运算符重载","友元与运算符重载","1400-0400",{"path":2178,"stem":2179,"title":2180,"date":2084,"chapterOrder":2181,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0500-ji-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0500-继承","继承","1400-0500",{"path":2183,"stem":2184,"title":2185,"date":2084,"chapterOrder":2186,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0600-duo-tai","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0600-多态","多态","1400-0600",{"path":2188,"stem":2189,"title":2190,"date":2084,"chapterOrder":2191,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-lei-he-dui-xiang","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-类和对象","类和对象","1400",{"path":2193,"stem":2194,"title":2195,"date":2084,"chapterOrder":2196,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1500-wen-jian-cao-zuo","wiki\u002F2023-10-05-Cplusplus教学\u002F1500-文件操作","文件操作","1500",{"path":2198,"stem":2199,"title":2200,"date":2084,"chapterOrder":2201,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1600-yi-chang-chu-li-yu-cuo-wu-ma","wiki\u002F2023-10-05-Cplusplus教学\u002F1600-异常处理与错误码","异常处理","1600",{"path":2203,"stem":2204,"title":2205,"date":2084,"chapterOrder":2206,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1700-mu-ban","wiki\u002F2023-10-05-Cplusplus教学\u002F1700-模板","模板","1700",{"path":2208,"stem":2209,"title":2210,"date":2084,"chapterOrder":2211,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0100-stl-chu-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0100-STL初识","STL初识","1800-0100",{"path":2213,"stem":2214,"title":2215,"date":2084,"chapterOrder":2216,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0200-std-array","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0200-std-array","std::array","1800-0200",{"path":2218,"stem":2219,"title":2220,"date":2084,"chapterOrder":2221,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0300-string-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0300-string容器","string容器","1800-0300",{"path":2223,"stem":2224,"title":2225,"date":2084,"chapterOrder":2226,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0400-vector-yu-deque-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0400-vector与deque容器","vector与deque容器","1800-0400",{"path":2228,"stem":2229,"title":2230,"date":2084,"chapterOrder":2231,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0500-stack-queue-list-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0500-stack-queue-list容器","stack \u002F queue \u002F list 容器","1800-0500",{"path":2233,"stem":2234,"title":2235,"date":2084,"chapterOrder":2236,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0600-set-map-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0600-set-map容器","set \u002F map 容器","1800-0600",{"path":2238,"stem":2239,"title":2240,"date":2084,"chapterOrder":2241,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0700-han-shu-dui-xiang-yu-wei-ci","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0700-函数对象与谓词","函数对象与谓词","1800-0700",{"path":2243,"stem":2244,"title":2245,"date":2084,"chapterOrder":2246,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0800-chang-yong-suan-fa","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0800-常用算法","常用算法","1800-0800",{"path":2248,"stem":2249,"title":2250,"date":2084,"chapterOrder":2251,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-stl-ti-gao-bian-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-STL提高编程","STL提高编程","1800",{"path":2253,"stem":2254,"title":2255,"date":2084,"chapterOrder":2256,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1900-c-lei-xing-zhuan-huan","wiki\u002F2023-10-05-Cplusplus教学\u002F1900-C++类型转换","C++类型转换","1900",{"path":2258,"stem":2259,"title":2260,"date":2084,"chapterOrder":2261,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0100-auto","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0100-auto","auto","2000-0100",{"path":2263,"stem":2264,"title":2265,"date":2084,"chapterOrder":2266,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0200-nullptr","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0200-nullptr","nullptr","2000-0200",{"path":2268,"stem":2269,"title":2270,"date":2084,"chapterOrder":2271,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0300-using","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0300-using","using","2000-0300",{"path":2273,"stem":2274,"title":2275,"date":2084,"chapterOrder":2276,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0400-enum-class","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0400-enum-class","enum class","2000-0400",{"path":2278,"stem":2279,"title":2280,"date":2084,"chapterOrder":2281,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0500-fan-wei-for-xun-huan","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0500-范围for循环","范围 for 循环","2000-0500",{"path":2283,"stem":2284,"title":2285,"date":2084,"chapterOrder":2286,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0600-jie-gou-hua-bang-ding","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0600-结构化绑定","结构化绑定","2000-0600",{"path":2288,"stem":2289,"title":2290,"date":2084,"chapterOrder":2291,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0700-constexpr","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0700-constexpr","constexpr","2000-0700",{"path":2293,"stem":2294,"title":2295,"date":2084,"chapterOrder":2296,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0800-raii","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0800-RAII","RAII","2000-0800",{"path":2298,"stem":2299,"title":2300,"date":2084,"chapterOrder":2301,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0900-zhi-neng-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0900-智能指针","智能指针","2000-0900",{"path":2303,"stem":2304,"title":2305,"date":2084,"chapterOrder":2306,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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-右值引用和移动语义","右值引用和移动语义","2000-1000",{"path":2308,"stem":2309,"title":2310,"date":2084,"chapterOrder":2311,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1100-lambda-biao-da-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1100-Lambda表达式","Lambda 表达式","2000-1100",{"path":2313,"stem":2314,"title":2315,"date":2084,"chapterOrder":2316,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1200-std-function","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1200-std-function","std::function","2000-1200",{"path":2318,"stem":2319,"title":2320,"date":2084,"chapterOrder":2321,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1300-std-bind","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1300-std-bind","std::bind","2000-1300",{"path":2323,"stem":2324,"title":2325,"date":2084,"chapterOrder":2326,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1400-std-optional","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1400-std-optional","std::optional","2000-1400",{"path":2328,"stem":2329,"title":2330,"date":2084,"chapterOrder":2331,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1500-std-variant","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1500-std-variant","std::variant","2000-1500",{"path":2333,"stem":2334,"title":2335,"date":2084,"chapterOrder":2336,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1600-std-span","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1600-std-span","std::span","2000-1600",{"path":2338,"stem":2339,"title":2340,"date":2084,"chapterOrder":2341,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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","2000-1700",{"path":2343,"stem":2344,"title":2345,"date":2084,"chapterOrder":2346,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1800-std-chrono","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1800-std-chrono","std::chrono","2000-1800",{"path":2348,"stem":2349,"title":2350,"date":2084,"chapterOrder":2351,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0100-std-thread","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0100-std-thread","std::thread 与 join","2000-1900-0100",{"path":2353,"stem":2354,"title":2355,"date":2084,"chapterOrder":2356,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0200-mutex-lock-guard","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0200-mutex-lock-guard","mutex 与 lock_guard","2000-1900-0200",{"path":2358,"stem":2359,"title":2360,"date":2084,"chapterOrder":2361,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0300-std-atomic","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0300-std-atomic","std::atomic","2000-1900-0300",{"path":2363,"stem":2364,"title":2365,"date":2084,"chapterOrder":2366,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-0400-condition-variable","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-0400-condition-variable","condition_variable","2000-1900-0400",{"path":2368,"stem":2369,"title":2370,"date":2084,"chapterOrder":2371,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-bing-fa-bian-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-并发编程","并发编程","2000-1900",{"path":2373,"stem":2374,"title":2375,"date":2084,"chapterOrder":2376,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-2000-std-filesystem","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-2000-std-filesystem","std::filesystem","2000-2000",{"path":2378,"stem":2379,"title":2380,"date":2084,"chapterOrder":2381,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-2100-modules-jian-jie","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-2100-modules简介","modules 简介","2000-2100",{"path":2383,"stem":2384,"title":2385,"date":2084,"chapterOrder":2386,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-xian-dai-c","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-现代C++","现代C++","2000",{"path":2388,"stem":2389,"title":2390,"date":2084,"chapterOrder":2391,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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","2100-0100-0100",{"path":2393,"stem":2394,"title":2395,"date":2084,"chapterOrder":2396,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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 基础","2100-0100-0200",{"path":2398,"stem":2399,"title":2400,"date":2084,"chapterOrder":2401,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0300-chuan-kou-tong-xin","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0300-串口通信","串口通信","2100-0100-0300",{"path":2403,"stem":2404,"title":2405,"date":2084,"chapterOrder":2406,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0400-tcp-tong-xin","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0400-TCP通信","TCP 通信","2100-0100-0400",{"path":2408,"stem":2409,"title":2410,"date":2084,"chapterOrder":2411,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0100-0500-udp-tong-xin","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0100-0500-UDP通信","UDP 通信","2100-0100-0500",{"path":2413,"stem":2414,"title":2415,"date":2084,"chapterOrder":2416,"chapterDepth":73,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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 集成","2100-0100-0600",{"path":2418,"stem":2419,"title":2420,"date":2084,"chapterOrder":2421,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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库","2100-0100",{"path":2423,"stem":2424,"title":2425,"date":2084,"chapterOrder":2426,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0200-eigen-xian-xing-dai-shu-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0200-Eigen线性代数库","Eigen线性代数库","2100-0200",{"path":2428,"stem":2429,"title":2430,"date":2084,"chapterOrder":2431,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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计算机视觉库","2100-0300",{"path":2433,"stem":2434,"title":2435,"date":2084,"chapterOrder":2436,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-0400-pcl-dian-yun-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-0400-PCL点云库","PCL点云库","2100-0400",{"path":2438,"stem":2439,"title":2440,"date":2084,"chapterOrder":2441,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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 李群李代数库","2100-0500",{"path":2443,"stem":2444,"title":2445,"date":2084,"chapterOrder":2446,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-chang-yong-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-常用库","常用库学习","2100",{"path":2448,"stem":2449,"title":2450,"date":2084,"chapterOrder":2451,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0100-cmakepresets-yu-gou-jian-an-zhuang","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-0100-CMakePresets与构建安装","CMakePresets与构建安装","2200-0100",{"path":2453,"stem":2454,"title":2455,"date":2084,"chapterOrder":2456,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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与公共编译选项","2200-0200",{"path":2458,"stem":2459,"title":2460,"date":2084,"chapterOrder":2461,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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详解","2200-0300",{"path":2463,"stem":2464,"title":2465,"date":2084,"chapterOrder":2466,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-0400-di-san-fang-ku-yi-lai-xie-fa","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-0400-第三方库依赖写法","第三方库依赖写法","2200-0400",{"path":2468,"stem":2469,"title":2470,"date":2084,"chapterOrder":2471,"chapterDepth":62,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\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-模板扩展与常见问题","模板扩展与常见问题","2200-0500",{"path":2473,"stem":2474,"title":2475,"date":2084,"chapterOrder":2476,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":2089},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-cmake-gong-cheng-mu-ban","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-CMake工程模板","CMake工程模板","2200",{"path":2086,"stem":2478,"title":2479,"date":2084,"chapterOrder":2480,"chapterDepth":2082,"docKey":2085,"docRoot":2086,"docTitle":2087,"isWikiDoc":76,"isWikiIndex":76},"wiki\u002F2023-10-05-Cplusplus教学\u002Findex","C\u002FC++教程",null,1784505232917]