[{"data":1,"prerenderedAt":1104},["ShallowReactive",2],{"wiki-page-\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-xian-dai-c":3,"wiki-doc-items-2023-10-05-cplusplus-jiao-xue":730},{"id":4,"title":5,"body":6,"chapterDepth":715,"chapterOrder":716,"date":717,"description":12,"docKey":718,"docRoot":719,"docTitle":720,"extension":721,"isWikiDoc":722,"isWikiIndex":723,"meta":724,"navigation":722,"path":725,"seo":726,"stem":727,"wikiDepth":728,"__hash__":729},"wiki\u002Fwiki\u002F2023-10-05-Cplusplus教学\u002F2000-现代C++.md","现代C++",{"type":7,"value":8,"toc":700},"minimark",[9,13,16,20,23,55,58,61,174,177,212,215,218,408,411,422,436,439,443,455,458,496,499,505,508,534,537,544,595,604,607,610,643,646],[10,11,12],"p",{},"\"现代 C++\"通常指 C++11 以及之后的标准引入的一系列写法和库工具。它不是把旧 C++ 全部推翻，而是在原有语法之上，提供更安全、更清晰、更适合工程开发的表达方式。",[10,14,15],{},"本章按\"由浅入深、从常用到进阶\"的顺序组织：先学每天都会用到的语法，再学生命周期和资源管理，接着学回调、数据表达、时间、文件和并发，最后了解模块化编译。",[17,18,19],"h2",{"id":19},"本章例程约定",[10,21,22],{},"为了方便你直接复制验证，本章各小节的\"示例代码\"遵循这些约定：",[24,25,26,35,42,49,52],"ol",{},[27,28,29,30,34],"li",{},"示例代码都包含完整 ",[31,32,33],"code",{},"#include","。",[27,36,37,38,41],{},"示例代码都包含 ",[31,39,40],{},"main"," 函数。",[27,43,44,45,48],{},"示例代码可以复制到单个 ",[31,46,47],{},".cpp"," 文件中编译运行。",[27,50,51],{},"每个示例代码下方都给出运行结果。",[27,53,54],{},"示例尽量一次只增加一个新概念，避免一个例子塞太多东西。",[10,56,57],{},"文中的\"常见错误\"用于说明不要这样写。为了避免误复制，错误写法会尽量放在文字说明或短片段中，不当作可运行示例。",[17,59,60],{"id":60},"学习顺序",[62,63,64,81],"table",{},[65,66,67],"thead",{},[68,69,70,75,78],"tr",{},[71,72,74],"th",{"align":73},"left","阶段",[71,76,77],{"align":73},"先解决的问题",[71,79,80],{"align":73},"对应章节",[82,83,84,109,123,149],"tbody",{},[68,85,86,90,93],{},[87,88,89],"td",{"align":73},"基础表达",[87,91,92],{"align":73},"少写重复类型，减少空指针和枚举混用，遍历更清楚",[87,94,95,98,99,98,102,98,105,108],{"align":73},[31,96,97],{},"auto","、",[31,100,101],{},"nullptr",[31,103,104],{},"using",[31,106,107],{},"enum class","、范围 for、结构化绑定",[68,110,111,114,117],{},[87,112,113],{"align":73},"生命周期",[87,115,116],{"align":73},"资源什么时候释放，谁拥有对象，大对象怎么高效传递",[87,118,119,122],{"align":73},[31,120,121],{},"constexpr","、RAII、智能指针、右值引用和移动语义",[68,124,125,128,131],{},[87,126,127],{"align":73},"回调和数据模型",[87,129,130],{"align":73},"小函数、回调保存、参数适配、可能没有值、多种类型之一",[87,132,133,134,98,137,98,140,98,143,98,146],{"align":73},"Lambda、",[31,135,136],{},"std::function",[31,138,139],{},"std::bind",[31,141,142],{},"std::optional",[31,144,145],{},"std::variant",[31,147,148],{},"std::span",[68,150,151,154,157],{},[87,152,153],{"align":73},"系统能力",[87,155,156],{"align":73},"格式化输出、时间、并发、文件系统、模块化",[87,158,159,162,163,98,166,169,170,173],{"align":73},[31,160,161],{},"std::format"," \u002F ",[31,164,165],{},"std::print",[31,167,168],{},"std::chrono","、并发编程、",[31,171,172],{},"std::filesystem","、modules",[10,175,176],{},"现代 C++ 的重点不是\"语法更新\"，而是\"把意图写清楚\"。例如：",[178,179,180,189,194,197,200,205],"ul",{},[27,181,182,184,185,188],{},[31,183,101],{}," 让空指针和整数 ",[31,186,187],{},"0"," 分开。",[27,190,191,193],{},[31,192,107],{}," 让不同枚举类型不能随便混用。",[27,195,196],{},"RAII 和智能指针把资源释放交给对象生命周期。",[27,198,199],{},"Lambda 让局部回调写在使用现场。",[27,201,202,204],{},[31,203,136],{}," 把不同类型的可调用对象统一保存和传递。",[27,206,207,162,209,211],{},[31,208,161],{},[31,210,165],{}," 让格式化输出更简洁，并保持类型安全。",[17,213,214],{"id":214},"旧写法和现代写法的关系",[10,216,217],{},"很多现代 C++ 特性都来自一个朴素问题：旧写法能用，但在复杂场景里容易出错。",[62,219,220,233],{},[65,221,222],{},[68,223,224,227,230],{},[71,225,226],{"align":73},"旧写法",[71,228,229],{"align":73},"主要问题",[71,231,232],{"align":73},"现代写法",[82,234,235,252,267,279,299,317,328,340,353,368,384,396],{},[68,236,237,245,248],{},[87,238,239,162,242,244],{"align":73},[31,240,241],{},"NULL",[31,243,187],{}," 表示空指针",[87,246,247],{"align":73},"会和整数重载混淆",[87,249,250],{"align":73},[31,251,101],{},[68,253,254,260,263],{},[87,255,256,259],{"align":73},[31,257,258],{},"typedef"," 写类型别名",[87,261,262],{"align":73},"模板别名不直观",[87,264,265],{"align":73},[31,266,104],{},[68,268,269,272,275],{},[87,270,271],{"align":73},"普通枚举",[87,273,274],{"align":73},"枚举名污染作用域，可隐式转整数",[87,276,277],{"align":73},[31,278,107],{},[68,280,281,287,290],{},[87,282,283,284],{"align":73},"手动 ",[31,285,286],{},"new\u002Fdelete",[87,288,289],{"align":73},"提前返回、异常、重复释放都容易出错",[87,291,292,293,98,296],{"align":73},"RAII、",[31,294,295],{},"std::unique_ptr",[31,297,298],{},"std::shared_ptr",[68,300,301,306,309],{},[87,302,283,303],{"align":73},[31,304,305],{},"lock\u002Funlock",[87,307,308],{"align":73},"忘记解锁会死锁，异常路径更危险",[87,310,311,98,314],{"align":73},[31,312,313],{},"std::lock_guard",[31,315,316],{},"std::unique_lock",[68,318,319,322,325],{},[87,320,321],{"align":73},"远处定义普通函数做简单回调",[87,323,324],{"align":73},"局部逻辑被拆散，不能方便携带上下文",[87,326,327],{"align":73},"Lambda",[68,329,330,333,336],{},[87,331,332],{"align":73},"只用函数指针保存回调",[87,334,335],{"align":73},"不能保存有捕获的 lambda 和函数对象",[87,337,338],{"align":73},[31,339,136],{},[68,341,342,345,348],{},[87,343,344],{"align":73},"手写适配函数调整参数",[87,346,347],{"align":73},"代码重复，旧接口适配麻烦",[87,349,350,352],{"align":73},[31,351,139],{}," 或 Lambda",[68,354,355,358,364],{},[87,356,357],{"align":73},"用特殊值表示失败",[87,359,360,363],{"align":73},[31,361,362],{},"-1","、空字符串等魔法值语义不清",[87,365,366],{"align":73},[31,367,142],{},[68,369,370,377,380],{},[87,371,372,373,376],{"align":73},"用 ",[31,374,375],{},"union"," 表示多种类型",[87,378,379],{"align":73},"访问错误类型会产生未定义行为",[87,381,382],{"align":73},[31,383,145],{},[68,385,386,389,392],{},[87,387,388],{"align":73},"手写时间单位换算",[87,390,391],{"align":73},"秒、毫秒、微秒容易混",[87,393,394],{"align":73},[31,395,168],{},[68,397,398,401,404],{},[87,399,400],{"align":73},"平台相关文件 API",[87,402,403],{"align":73},"Windows\u002FLinux 写法不同",[87,405,406],{"align":73},[31,407,172],{},[10,409,410],{},"学习每个特性时，可以按三个问题来理解：",[24,412,413,416,419],{},[27,414,415],{},"旧写法哪里容易错？",[27,417,418],{},"现代写法如何把意图写进类型或语法里？",[27,420,421],{},"在什么场景下差异才明显？",[10,423,424,425,427,428,431,432,435],{},"比如一个智能指针示例如果只在 ",[31,426,40],{}," 里创建对象然后正常结束，看起来和手动 ",[31,429,430],{},"delete"," 差不多；一旦出现提前 ",[31,433,434],{},"return","、异常、跨函数传递，RAII 的价值就会立刻显现。一个 Lambda 如果只立刻调用，按值捕获和按引用捕获都可能没事；一旦保存到回调、线程、定时器里，生命周期差异就会变得非常重要。",[17,437,438],{"id":438},"推荐学习路线",[440,441,442],"h3",{"id":442},"让代码更清楚",[10,444,445,446,98,448,98,450,98,452,454],{},"先学习 ",[31,447,97],{},[31,449,101],{},[31,451,104],{},[31,453,107],{},"、范围 for 和结构化绑定。这些内容难度不高，但能明显减少冗长代码和低级错误。",[10,456,457],{},"这一阶段重点记住：",[178,459,460,465,470,475,482],{},[27,461,462,464],{},[31,463,97],{}," 不是弱类型，只是让编译器帮你写类型。",[27,466,467,469],{},[31,468,101],{}," 只表示空指针，不表示整数。",[27,471,472,474],{},[31,473,107],{}," 默认不和整数混用。",[27,476,477,478,481],{},"范围 for 默认用 ",[31,479,480],{},"const auto&"," 遍历大对象。",[27,483,484,485,98,488,491,492,495],{},"结构化绑定适合解包 ",[31,486,487],{},"pair",[31,489,490],{},"tuple","、结构体和 ",[31,493,494],{},"map"," 元素。",[440,497,498],{"id":498},"理解生命周期",[10,500,501,502,504],{},"接着学习 ",[31,503,121],{},"、RAII、智能指针和移动语义。这一阶段比语法更重要的是思维方式：对象什么时候创建，什么时候销毁，谁拥有它，谁只是借用它。",[10,506,507],{},"建议按这个顺序理解：",[24,509,510,513,519,525,531],{},[27,511,512],{},"RAII：资源和对象生命周期绑定。",[27,514,515,518],{},[31,516,517],{},"unique_ptr","：独占所有权，默认选择。",[27,520,521,524],{},[31,522,523],{},"shared_ptr","：确实需要多个所有者时才用。",[27,526,527,530],{},[31,528,529],{},"weak_ptr","：只观察，不延长生命周期，用来打破循环引用。",[27,532,533],{},"移动语义：把资源转移出去，避免大对象深拷贝。",[440,535,536],{"id":536},"掌握回调和数据表达",[10,538,133,539,98,541,543],{},[31,540,136],{},[31,542,139],{}," 三章要连起来看，但不要混在一起背：",[62,545,546,559],{},[65,547,548],{},[68,549,550,553,556],{},[71,551,552],{"align":73},"工具",[71,554,555],{"align":73},"解决的问题",[71,557,558],{"align":73},"重点",[82,560,561,571,583],{},[68,562,563,565,568],{},[87,564,327],{"align":73},[87,566,567],{"align":73},"在使用现场写一个小函数",[87,569,570],{"align":73},"捕获列表、参数、返回值、生命周期",[68,572,573,577,580],{},[87,574,575],{"align":73},[31,576,136],{},[87,578,579],{"align":73},"统一保存和传递不同类型的可调用对象",[87,581,582],{"align":73},"类型擦除、回调成员变量、回调容器",[68,584,585,589,592],{},[87,586,587],{"align":73},[31,588,139],{},[87,590,591],{"align":73},"适配已有函数的参数",[87,593,594],{"align":73},"固定参数、调整顺序、绑定成员函数",[10,596,597,98,599,98,601,603],{},[31,598,142],{},[31,600,145],{},[31,602,148],{}," 则分别解决\"可能没有值\"、\"几种类型之一\"、\"借用一段连续数据\"的问题。",[440,605,606],{"id":606},"走向工程能力",[10,608,609],{},"最后学习格式化输出、时间、并发、文件系统和 modules。这些内容更接近真实项目：",[178,611,612,627,632,635,640],{},[27,613,614,162,616,618,619,622,623,626],{},[31,615,161],{},[31,617,165],{}," 比 ",[31,620,621],{},"stringstream"," 简洁，比 ",[31,624,625],{},"printf"," 类型安全。",[27,628,629,631],{},[31,630,168],{}," 避免手写时间单位换算。",[27,633,634],{},"并发编程要先保证正确，再考虑速度。",[27,636,637,639],{},[31,638,172],{}," 让路径、目录、文件信息处理跨平台。",[27,641,642],{},"modules 是 C++20 引入的新编译模型，目前应先理解概念，再根据工具链支持决定是否使用。",[17,644,645],{"id":645},"实战练习建议",[24,647,648,669,674,685,688,697],{},[27,649,650,651,653,654,657,658,661,662,98,664,98,666,668],{},"学 ",[31,652,101],{},"：写两个重载函数，分别接收 ",[31,655,656],{},"int"," 和 ",[31,659,660],{},"int*","，观察 ",[31,663,187],{},[31,665,241],{},[31,667,101],{}," 的区别。",[27,670,650,671,673],{},[31,672,107],{},"：把普通枚举换成枚举类，看看哪些隐式转换被禁止。",[27,675,676,677,679,680,682,683,34],{},"学智能指针：先写一个提前 ",[31,678,434],{}," 的手动 ",[31,681,286],{}," 例子，再改成 ",[31,684,517],{},[27,686,687],{},"学 Lambda：分别用按值捕获和按引用捕获，观察外部变量是否变化。",[27,689,650,690,692,693,696],{},[31,691,136],{},"：把多个不同 lambda 放进同一个 ",[31,694,695],{},"vector","，统一执行。",[27,698,699],{},"学并发：让两个 1 秒等待任务先顺序执行，再放进两个线程中执行，对比耗时。",{"title":701,"searchDepth":702,"depth":702,"links":703},"",2,[704,705,706,707,714],{"id":19,"depth":702,"text":19},{"id":60,"depth":702,"text":60},{"id":214,"depth":702,"text":214},{"id":438,"depth":702,"text":438,"children":708},[709,711,712,713],{"id":442,"depth":710,"text":442},3,{"id":498,"depth":710,"text":498},{"id":536,"depth":710,"text":536},{"id":606,"depth":710,"text":606},{"id":645,"depth":702,"text":645},0,"2000","2023-10-05","2023-10-05-cplusplus-jiao-xue","\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue","Cplusplus教学","md",true,false,{},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-xian-dai-c",{"title":5,"description":12},"wiki\u002F2023-10-05-Cplusplus教学\u002F2000-现代C++",1,"Cq6EoZ4ZxJzbgOymGMXUMRUlk-AsnQCe96yb-aGR678",[731,736,741,746,751,756,761,766,771,776,781,786,791,796,801,806,811,816,821,826,831,836,841,846,851,856,861,866,871,876,881,886,891,896,900,904,908,912,917,922,926,931,936,941,946,950,954,958,962,966,971,975,980,985,990,995,1000,1004,1009,1010,1015,1020,1025,1030,1035,1040,1045,1050,1055,1060,1065,1070,1075,1080,1085,1090,1095,1100],{"path":732,"stem":733,"title":734,"date":717,"chapterOrder":735,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":737,"stem":738,"title":739,"date":717,"chapterOrder":740,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0200-c-ji-chu-chu-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F0200-C++基础初识","C++基础初识","0200",{"path":742,"stem":743,"title":744,"date":717,"chapterOrder":745,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":747,"stem":748,"title":749,"date":717,"chapterOrder":750,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0400-shu-ru-shu-chu","wiki\u002F2023-10-05-Cplusplus教学\u002F0400-输入输出","输入输出","0400",{"path":752,"stem":753,"title":754,"date":717,"chapterOrder":755,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0500-yun-suan-fu","wiki\u002F2023-10-05-Cplusplus教学\u002F0500-运算符","运算符","0500",{"path":757,"stem":758,"title":759,"date":717,"chapterOrder":760,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0600-cheng-xu-liu-cheng-jie-gou","wiki\u002F2023-10-05-Cplusplus教学\u002F0600-程序流程结构","程序流程结构","0600",{"path":762,"stem":763,"title":764,"date":717,"chapterOrder":765,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0700-shu-zu","wiki\u002F2023-10-05-Cplusplus教学\u002F0700-数组","数组","0700",{"path":767,"stem":768,"title":769,"date":717,"chapterOrder":770,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0800-han-shu-yu-tou-wen-jian","wiki\u002F2023-10-05-Cplusplus教学\u002F0800-函数与头文件","函数与头文件","0800",{"path":772,"stem":773,"title":774,"date":717,"chapterOrder":775,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F0900-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F0900-指针","指针","0900",{"path":777,"stem":778,"title":779,"date":717,"chapterOrder":780,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1000-jie-gou-ti-yu-gong-yong-ti","wiki\u002F2023-10-05-Cplusplus教学\u002F1000-结构体与共用体","结构体与共用体","1000",{"path":782,"stem":783,"title":784,"date":717,"chapterOrder":785,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1100-nei-cun-fen-qu-yu-sheng-ming-zhou-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1100-内存分区与生命周期","内存分区与生命周期","1100",{"path":787,"stem":788,"title":789,"date":717,"chapterOrder":790,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1200-yin-yong","wiki\u002F2023-10-05-Cplusplus教学\u002F1200-引用","引用","1200",{"path":792,"stem":793,"title":794,"date":717,"chapterOrder":795,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":797,"stem":798,"title":799,"date":717,"chapterOrder":800,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0100-feng-zhuang","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0100-封装","封装","1400-0100",{"path":802,"stem":803,"title":804,"date":717,"chapterOrder":805,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":807,"stem":808,"title":809,"date":717,"chapterOrder":810,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":812,"stem":813,"title":814,"date":717,"chapterOrder":815,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":817,"stem":818,"title":819,"date":717,"chapterOrder":820,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0500-ji-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0500-继承","继承","1400-0500",{"path":822,"stem":823,"title":824,"date":717,"chapterOrder":825,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-0600-duo-tai","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-0600-多态","多态","1400-0600",{"path":827,"stem":828,"title":829,"date":717,"chapterOrder":830,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1400-lei-he-dui-xiang","wiki\u002F2023-10-05-Cplusplus教学\u002F1400-类和对象","类和对象","1400",{"path":832,"stem":833,"title":834,"date":717,"chapterOrder":835,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1500-wen-jian-cao-zuo","wiki\u002F2023-10-05-Cplusplus教学\u002F1500-文件操作","文件操作","1500",{"path":837,"stem":838,"title":839,"date":717,"chapterOrder":840,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1600-yi-chang-chu-li-yu-cuo-wu-ma","wiki\u002F2023-10-05-Cplusplus教学\u002F1600-异常处理与错误码","异常处理","1600",{"path":842,"stem":843,"title":844,"date":717,"chapterOrder":845,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1700-mu-ban","wiki\u002F2023-10-05-Cplusplus教学\u002F1700-模板","模板","1700",{"path":847,"stem":848,"title":849,"date":717,"chapterOrder":850,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0100-stl-chu-shi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0100-STL初识","STL初识","1800-0100",{"path":852,"stem":853,"title":854,"date":717,"chapterOrder":855,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":857,"stem":858,"title":859,"date":717,"chapterOrder":860,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0300-string-rong-qi","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0300-string容器","string容器","1800-0300",{"path":862,"stem":863,"title":864,"date":717,"chapterOrder":865,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":867,"stem":868,"title":869,"date":717,"chapterOrder":870,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":872,"stem":873,"title":874,"date":717,"chapterOrder":875,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":877,"stem":878,"title":879,"date":717,"chapterOrder":880,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":882,"stem":883,"title":884,"date":717,"chapterOrder":885,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-0800-chang-yong-suan-fa","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-0800-常用算法","常用算法","1800-0800",{"path":887,"stem":888,"title":889,"date":717,"chapterOrder":890,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1800-stl-ti-gao-bian-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F1800-STL提高编程","STL提高编程","1800",{"path":892,"stem":893,"title":894,"date":717,"chapterOrder":895,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F1900-c-lei-xing-zhuan-huan","wiki\u002F2023-10-05-Cplusplus教学\u002F1900-C++类型转换","C++类型转换","1900",{"path":897,"stem":898,"title":97,"date":717,"chapterOrder":899,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0100-auto","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0100-auto","2000-0100",{"path":901,"stem":902,"title":101,"date":717,"chapterOrder":903,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0200-nullptr","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0200-nullptr","2000-0200",{"path":905,"stem":906,"title":104,"date":717,"chapterOrder":907,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0300-using","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0300-using","2000-0300",{"path":909,"stem":910,"title":107,"date":717,"chapterOrder":911,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0400-enum-class","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0400-enum-class","2000-0400",{"path":913,"stem":914,"title":915,"date":717,"chapterOrder":916,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":918,"stem":919,"title":920,"date":717,"chapterOrder":921,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0600-jie-gou-hua-bang-ding","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0600-结构化绑定","结构化绑定","2000-0600",{"path":923,"stem":924,"title":121,"date":717,"chapterOrder":925,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0700-constexpr","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0700-constexpr","2000-0700",{"path":927,"stem":928,"title":929,"date":717,"chapterOrder":930,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0800-raii","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0800-RAII","RAII","2000-0800",{"path":932,"stem":933,"title":934,"date":717,"chapterOrder":935,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-0900-zhi-neng-zhi-zhen","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-0900-智能指针","智能指针","2000-0900",{"path":937,"stem":938,"title":939,"date":717,"chapterOrder":940,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":942,"stem":943,"title":944,"date":717,"chapterOrder":945,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":947,"stem":948,"title":136,"date":717,"chapterOrder":949,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1200-std-function","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1200-std-function","2000-1200",{"path":951,"stem":952,"title":139,"date":717,"chapterOrder":953,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1300-std-bind","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1300-std-bind","2000-1300",{"path":955,"stem":956,"title":142,"date":717,"chapterOrder":957,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1400-std-optional","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1400-std-optional","2000-1400",{"path":959,"stem":960,"title":145,"date":717,"chapterOrder":961,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1500-std-variant","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1500-std-variant","2000-1500",{"path":963,"stem":964,"title":148,"date":717,"chapterOrder":965,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1600-std-span","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1600-std-span","2000-1600",{"path":967,"stem":968,"title":969,"date":717,"chapterOrder":970,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":972,"stem":973,"title":168,"date":717,"chapterOrder":974,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1800-std-chrono","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1800-std-chrono","2000-1800",{"path":976,"stem":977,"title":978,"date":717,"chapterOrder":979,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":981,"stem":982,"title":983,"date":717,"chapterOrder":984,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":986,"stem":987,"title":988,"date":717,"chapterOrder":989,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":991,"stem":992,"title":993,"date":717,"chapterOrder":994,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":996,"stem":997,"title":998,"date":717,"chapterOrder":999,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-1900-bing-fa-bian-cheng","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-1900-并发编程","并发编程","2000-1900",{"path":1001,"stem":1002,"title":172,"date":717,"chapterOrder":1003,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-2000-std-filesystem","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-2000-std-filesystem","2000-2000",{"path":1005,"stem":1006,"title":1007,"date":717,"chapterOrder":1008,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2000-2100-modules-jian-jie","wiki\u002F2023-10-05-Cplusplus教学\u002F2000-2100-modules简介","modules 简介","2000-2100",{"path":725,"stem":727,"title":5,"date":717,"chapterOrder":716,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},{"path":1011,"stem":1012,"title":1013,"date":717,"chapterOrder":1014,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1016,"stem":1017,"title":1018,"date":717,"chapterOrder":1019,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1021,"stem":1022,"title":1023,"date":717,"chapterOrder":1024,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1026,"stem":1027,"title":1028,"date":717,"chapterOrder":1029,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1031,"stem":1032,"title":1033,"date":717,"chapterOrder":1034,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1036,"stem":1037,"title":1038,"date":717,"chapterOrder":1039,"chapterDepth":702,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1041,"stem":1042,"title":1043,"date":717,"chapterOrder":1044,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1046,"stem":1047,"title":1048,"date":717,"chapterOrder":1049,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1051,"stem":1052,"title":1053,"date":717,"chapterOrder":1054,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1056,"stem":1057,"title":1058,"date":717,"chapterOrder":1059,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1061,"stem":1062,"title":1063,"date":717,"chapterOrder":1064,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1066,"stem":1067,"title":1068,"date":717,"chapterOrder":1069,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2100-chang-yong-ku","wiki\u002F2023-10-05-Cplusplus教学\u002F2100-常用库","常用库学习","2100",{"path":1071,"stem":1072,"title":1073,"date":717,"chapterOrder":1074,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1076,"stem":1077,"title":1078,"date":717,"chapterOrder":1079,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1081,"stem":1082,"title":1083,"date":717,"chapterOrder":1084,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1086,"stem":1087,"title":1088,"date":717,"chapterOrder":1089,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1091,"stem":1092,"title":1093,"date":717,"chapterOrder":1094,"chapterDepth":728,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\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":1096,"stem":1097,"title":1098,"date":717,"chapterOrder":1099,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":723},"\u002Fwiki\u002F2023-10-05-cplusplus-jiao-xue\u002F2200-cmake-gong-cheng-mu-ban","wiki\u002F2023-10-05-Cplusplus教学\u002F2200-CMake工程模板","CMake工程模板","2200",{"path":719,"stem":1101,"title":1102,"date":717,"chapterOrder":1103,"chapterDepth":715,"docKey":718,"docRoot":719,"docTitle":720,"isWikiDoc":722,"isWikiIndex":722},"wiki\u002F2023-10-05-Cplusplus教学\u002Findex","C\u002FC++教程",null,1784505233793]