[{"data":1,"prerenderedAt":4466},["ShallowReactive",2],{"wiki-page-/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai":3,"wiki-doc-items-/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai":4038,"language-switcher-data-/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai":4450,"wiki-i18n-paths-/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai":4465},{"id":4,"title":5,"body":6,"canonicalPath":4020,"chapter":4021,"chapterSort":4022,"date":4023,"description":57,"docI18nKey":4024,"docKey":4025,"docRoot":4026,"docTitle":4027,"extension":4028,"i18nKey":4029,"isBlogPost":4030,"isWikiDoc":121,"isWikiIndex":4030,"layout":4031,"legacyPath":4032,"locale":4033,"localeSlug":4034,"meta":4035,"navigation":121,"path":4020,"seo":4036,"sourcePath":4032,"sourceStem":4029,"stem":4029,"wikiDepth":65,"__hash__":4037},"content/wiki/2023-10-05-Cplusplus教学/ch13-4-友元与运算符重载.md","友元与运算符重载",{"type":7,"value":8,"toc":4016},"minimark",[9,13,17,20,23,26,29,32,35,48,51,408,415,417,798,802,804,1226,1230,1233,1236,1239,1242,1767,1771,1777,1782,1785,1788,2116,2120,2125,2128,2131,2554,2558,2563,2566,2569,2584,2587,2592,3131,3135,3138,3141,3145,3660,3664,3667,3678,3682,4007,4012],[10,11,12],"h3",{"id":12},"友元",[14,15,16],"p",{},"生活中你的家有客厅(Public)，有你的卧室(Private)",[14,18,19],{},"客厅所有来的客人都可以进去，但是你的卧室是私有的，也就是说只有你能进去",[14,21,22],{},"但是呢，你也可以允许你的好闺蜜好基友进去。",[14,24,25],{},"在程序里，有些私有属性 也想让类外特殊的一些函数或者类进行访问，就需要用到友元的技术",[14,27,28],{},"友元的目的就是让一个函数或者类 访问另一个类中私有成员",[14,30,31],{},"友元的关键字为  ==friend==",[14,33,34],{},"友元的三种实现",[36,37,38,42,45],"ul",{},[39,40,41],"li",{},"全局函数做友元",[39,43,44],{},"类做友元",[39,46,47],{},"成员函数做友元",[49,50,41],"h4",{"id":41},[52,53,58],"pre",{"className":54,"code":55,"language":56,"meta":57,"style":57},"language-cpp shiki shiki-themes github-light github-dark","class Building\n{\n    //告诉编译器 goodGay全局函数 是 Building类的好朋友，可以访问类中的私有内容\n    friend void goodGay(Building * building);\n\npublic:\n\n    Building()\n    {\n        this->m_SittingRoom = \"客厅\";\n        this->m_BedRoom = \"卧室\";\n    }\n\npublic:\n    string m_SittingRoom; //客厅\n\nprivate:\n    string m_BedRoom; //卧室\n};\n\nvoid goodGay(Building * building)\n{\n    cout \u003C\u003C \"好基友正在访问： \" \u003C\u003C building->m_SittingRoom \u003C\u003C endl;\n    cout \u003C\u003C \"好基友正在访问： \" \u003C\u003C building->m_BedRoom \u003C\u003C endl;\n}\n\nvoid test01()\n{\n    Building b;\n    goodGay(&b);\n}\n\nint main(){\n\n    test01();\n\n    return 0;\n}\n","cpp","",[59,60,61,74,81,88,116,123,129,134,143,149,169,184,190,195,200,209,214,220,229,235,240,259,264,287,305,311,316,326,331,337,351,356,361,373,378,387,392,403],"code",{"__ignoreMap":57},[62,63,66,70],"span",{"class":64,"line":65},"line",1,[62,67,69],{"class":68},"szBVR","class",[62,71,73],{"class":72},"sScJk"," Building\n",[62,75,77],{"class":64,"line":76},2,[62,78,80],{"class":79},"sVt8B","{\n",[62,82,84],{"class":64,"line":83},3,[62,85,87],{"class":86},"sJ8bj","    //告诉编译器 goodGay全局函数 是 Building类的好朋友，可以访问类中的私有内容\n",[62,89,91,94,97,100,103,106,109,113],{"class":64,"line":90},4,[62,92,93],{"class":68},"    friend",[62,95,96],{"class":68}," void",[62,98,99],{"class":72}," goodGay",[62,101,102],{"class":79},"(",[62,104,105],{"class":72},"Building",[62,107,108],{"class":68}," *",[62,110,112],{"class":111},"s4XuR"," building",[62,114,115],{"class":79},");\n",[62,117,119],{"class":64,"line":118},5,[62,120,122],{"emptyLinePlaceholder":121},true,"\n",[62,124,126],{"class":64,"line":125},6,[62,127,128],{"class":68},"public:\n",[62,130,132],{"class":64,"line":131},7,[62,133,122],{"emptyLinePlaceholder":121},[62,135,137,140],{"class":64,"line":136},8,[62,138,139],{"class":72},"    Building",[62,141,142],{"class":79},"()\n",[62,144,146],{"class":64,"line":145},9,[62,147,148],{"class":79},"    {\n",[62,150,152,156,159,162,166],{"class":64,"line":151},10,[62,153,155],{"class":154},"sj4cs","        this",[62,157,158],{"class":79},"->m_SittingRoom ",[62,160,161],{"class":68},"=",[62,163,165],{"class":164},"sZZnC"," \"客厅\"",[62,167,168],{"class":79},";\n",[62,170,172,174,177,179,182],{"class":64,"line":171},11,[62,173,155],{"class":154},[62,175,176],{"class":79},"->m_BedRoom ",[62,178,161],{"class":68},[62,180,181],{"class":164}," \"卧室\"",[62,183,168],{"class":79},[62,185,187],{"class":64,"line":186},12,[62,188,189],{"class":79},"    }\n",[62,191,193],{"class":64,"line":192},13,[62,194,122],{"emptyLinePlaceholder":121},[62,196,198],{"class":64,"line":197},14,[62,199,128],{"class":68},[62,201,203,206],{"class":64,"line":202},15,[62,204,205],{"class":79},"    string m_SittingRoom;",[62,207,208],{"class":86}," //客厅\n",[62,210,212],{"class":64,"line":211},16,[62,213,122],{"emptyLinePlaceholder":121},[62,215,217],{"class":64,"line":216},17,[62,218,219],{"class":68},"private:\n",[62,221,223,226],{"class":64,"line":222},18,[62,224,225],{"class":79},"    string m_BedRoom;",[62,227,228],{"class":86}," //卧室\n",[62,230,232],{"class":64,"line":231},19,[62,233,234],{"class":79},"};\n",[62,236,238],{"class":64,"line":237},20,[62,239,122],{"emptyLinePlaceholder":121},[62,241,243,246,248,250,252,254,256],{"class":64,"line":242},21,[62,244,245],{"class":68},"void",[62,247,99],{"class":72},[62,249,102],{"class":79},[62,251,105],{"class":72},[62,253,108],{"class":68},[62,255,112],{"class":111},[62,257,258],{"class":79},")\n",[62,260,262],{"class":64,"line":261},22,[62,263,80],{"class":79},[62,265,267,270,273,276,279,282,284],{"class":64,"line":266},23,[62,268,269],{"class":79},"    cout ",[62,271,272],{"class":68},"\u003C\u003C",[62,274,275],{"class":164}," \"好基友正在访问： \"",[62,277,278],{"class":68}," \u003C\u003C",[62,280,281],{"class":79}," building->m_SittingRoom ",[62,283,272],{"class":68},[62,285,286],{"class":79}," endl;\n",[62,288,290,292,294,296,298,301,303],{"class":64,"line":289},24,[62,291,269],{"class":79},[62,293,272],{"class":68},[62,295,275],{"class":164},[62,297,278],{"class":68},[62,299,300],{"class":79}," building->m_BedRoom ",[62,302,272],{"class":68},[62,304,286],{"class":79},[62,306,308],{"class":64,"line":307},25,[62,309,310],{"class":79},"}\n",[62,312,314],{"class":64,"line":313},26,[62,315,122],{"emptyLinePlaceholder":121},[62,317,319,321,324],{"class":64,"line":318},27,[62,320,245],{"class":68},[62,322,323],{"class":72}," test01",[62,325,142],{"class":79},[62,327,329],{"class":64,"line":328},28,[62,330,80],{"class":79},[62,332,334],{"class":64,"line":333},29,[62,335,336],{"class":79},"    Building b;\n",[62,338,340,343,345,348],{"class":64,"line":339},30,[62,341,342],{"class":72},"    goodGay",[62,344,102],{"class":79},[62,346,347],{"class":68},"&",[62,349,350],{"class":79},"b);\n",[62,352,354],{"class":64,"line":353},31,[62,355,310],{"class":79},[62,357,359],{"class":64,"line":358},32,[62,360,122],{"emptyLinePlaceholder":121},[62,362,364,367,370],{"class":64,"line":363},33,[62,365,366],{"class":68},"int",[62,368,369],{"class":72}," main",[62,371,372],{"class":79},"(){\n",[62,374,376],{"class":64,"line":375},34,[62,377,122],{"emptyLinePlaceholder":121},[62,379,381,384],{"class":64,"line":380},35,[62,382,383],{"class":72},"    test01",[62,385,386],{"class":79},"();\n",[62,388,390],{"class":64,"line":389},36,[62,391,122],{"emptyLinePlaceholder":121},[62,393,395,398,401],{"class":64,"line":394},37,[62,396,397],{"class":68},"    return",[62,399,400],{"class":154}," 0",[62,402,168],{"class":79},[62,404,406],{"class":64,"line":405},38,[62,407,310],{"class":79},[14,409,410,414],{},[411,412,413],"strong",{},"运行/观察结果："," 运行后会打印示例中的变量值或地址；地址值与运行环境有关，以同类对象的相对位置和指针变化为观察重点。",[49,416,44],{"id":44},[52,418,420],{"className":54,"code":419,"language":56,"meta":57,"style":57},"class Building;\nclass goodGay\n{\npublic:\n\n    goodGay();\n    void visit();\n\nprivate:\n    Building *building;\n};\n\nclass Building\n{\n    //告诉编译器 goodGay类是Building类的好朋友，可以访问到Building类中私有内容\n    friend class goodGay;\n\npublic:\n    Building();\n\npublic:\n    string m_SittingRoom; //客厅\nprivate:\n    string m_BedRoom;//卧室\n};\n\nBuilding::Building()\n{\n    this->m_SittingRoom = \"客厅\";\n    this->m_BedRoom = \"卧室\";\n}\n\ngoodGay::goodGay()\n{\n    building = new Building;\n}\n\nvoid goodGay::visit()\n{\n    cout \u003C\u003C \"好基友正在访问\" \u003C\u003C building->m_SittingRoom \u003C\u003C endl;\n    cout \u003C\u003C \"好基友正在访问\" \u003C\u003C building->m_BedRoom \u003C\u003C endl;\n}\n\nvoid test01()\n{\n    goodGay gg;\n    gg.visit();\n\n}\n\nint main(){\n\n    test01();\n\n    return 0;\n}\n",[59,421,422,431,438,442,446,450,456,466,470,474,485,489,493,499,503,508,519,523,527,533,537,541,547,551,558,562,566,577,581,594,606,610,614,625,629,642,646,650,663,668,686,703,708,713,722,727,733,743,748,753,758,767,772,779,784,793],{"__ignoreMap":57},[62,423,424,426,429],{"class":64,"line":65},[62,425,69],{"class":68},[62,427,428],{"class":72}," Building",[62,430,168],{"class":79},[62,432,433,435],{"class":64,"line":76},[62,434,69],{"class":68},[62,436,437],{"class":72}," goodGay\n",[62,439,440],{"class":64,"line":83},[62,441,80],{"class":79},[62,443,444],{"class":64,"line":90},[62,445,128],{"class":68},[62,447,448],{"class":64,"line":118},[62,449,122],{"emptyLinePlaceholder":121},[62,451,452,454],{"class":64,"line":125},[62,453,342],{"class":72},[62,455,386],{"class":79},[62,457,458,461,464],{"class":64,"line":131},[62,459,460],{"class":68},"    void",[62,462,463],{"class":72}," visit",[62,465,386],{"class":79},[62,467,468],{"class":64,"line":136},[62,469,122],{"emptyLinePlaceholder":121},[62,471,472],{"class":64,"line":145},[62,473,219],{"class":68},[62,475,476,479,482],{"class":64,"line":151},[62,477,478],{"class":79},"    Building ",[62,480,481],{"class":68},"*",[62,483,484],{"class":79},"building;\n",[62,486,487],{"class":64,"line":171},[62,488,234],{"class":79},[62,490,491],{"class":64,"line":186},[62,492,122],{"emptyLinePlaceholder":121},[62,494,495,497],{"class":64,"line":192},[62,496,69],{"class":68},[62,498,73],{"class":72},[62,500,501],{"class":64,"line":197},[62,502,80],{"class":79},[62,504,505],{"class":64,"line":202},[62,506,507],{"class":86},"    //告诉编译器 goodGay类是Building类的好朋友，可以访问到Building类中私有内容\n",[62,509,510,512,515,517],{"class":64,"line":211},[62,511,93],{"class":68},[62,513,514],{"class":68}," class",[62,516,99],{"class":72},[62,518,168],{"class":79},[62,520,521],{"class":64,"line":216},[62,522,122],{"emptyLinePlaceholder":121},[62,524,525],{"class":64,"line":222},[62,526,128],{"class":68},[62,528,529,531],{"class":64,"line":231},[62,530,139],{"class":72},[62,532,386],{"class":79},[62,534,535],{"class":64,"line":237},[62,536,122],{"emptyLinePlaceholder":121},[62,538,539],{"class":64,"line":242},[62,540,128],{"class":68},[62,542,543,545],{"class":64,"line":261},[62,544,205],{"class":79},[62,546,208],{"class":86},[62,548,549],{"class":64,"line":266},[62,550,219],{"class":68},[62,552,553,555],{"class":64,"line":289},[62,554,225],{"class":79},[62,556,557],{"class":86},"//卧室\n",[62,559,560],{"class":64,"line":307},[62,561,234],{"class":79},[62,563,564],{"class":64,"line":313},[62,565,122],{"emptyLinePlaceholder":121},[62,567,568,570,573,575],{"class":64,"line":318},[62,569,105],{"class":72},[62,571,572],{"class":79},"::",[62,574,105],{"class":72},[62,576,142],{"class":79},[62,578,579],{"class":64,"line":328},[62,580,80],{"class":79},[62,582,583,586,588,590,592],{"class":64,"line":333},[62,584,585],{"class":154},"    this",[62,587,158],{"class":79},[62,589,161],{"class":68},[62,591,165],{"class":164},[62,593,168],{"class":79},[62,595,596,598,600,602,604],{"class":64,"line":339},[62,597,585],{"class":154},[62,599,176],{"class":79},[62,601,161],{"class":68},[62,603,181],{"class":164},[62,605,168],{"class":79},[62,607,608],{"class":64,"line":353},[62,609,310],{"class":79},[62,611,612],{"class":64,"line":358},[62,613,122],{"emptyLinePlaceholder":121},[62,615,616,619,621,623],{"class":64,"line":363},[62,617,618],{"class":72},"goodGay",[62,620,572],{"class":79},[62,622,618],{"class":72},[62,624,142],{"class":79},[62,626,627],{"class":64,"line":375},[62,628,80],{"class":79},[62,630,631,634,636,639],{"class":64,"line":380},[62,632,633],{"class":79},"    building ",[62,635,161],{"class":68},[62,637,638],{"class":68}," new",[62,640,641],{"class":79}," Building;\n",[62,643,644],{"class":64,"line":389},[62,645,310],{"class":79},[62,647,648],{"class":64,"line":394},[62,649,122],{"emptyLinePlaceholder":121},[62,651,652,654,656,658,661],{"class":64,"line":405},[62,653,245],{"class":68},[62,655,99],{"class":72},[62,657,572],{"class":79},[62,659,660],{"class":72},"visit",[62,662,142],{"class":79},[62,664,666],{"class":64,"line":665},39,[62,667,80],{"class":79},[62,669,671,673,675,678,680,682,684],{"class":64,"line":670},40,[62,672,269],{"class":79},[62,674,272],{"class":68},[62,676,677],{"class":164}," \"好基友正在访问\"",[62,679,278],{"class":68},[62,681,281],{"class":79},[62,683,272],{"class":68},[62,685,286],{"class":79},[62,687,689,691,693,695,697,699,701],{"class":64,"line":688},41,[62,690,269],{"class":79},[62,692,272],{"class":68},[62,694,677],{"class":164},[62,696,278],{"class":68},[62,698,300],{"class":79},[62,700,272],{"class":68},[62,702,286],{"class":79},[62,704,706],{"class":64,"line":705},42,[62,707,310],{"class":79},[62,709,711],{"class":64,"line":710},43,[62,712,122],{"emptyLinePlaceholder":121},[62,714,716,718,720],{"class":64,"line":715},44,[62,717,245],{"class":68},[62,719,323],{"class":72},[62,721,142],{"class":79},[62,723,725],{"class":64,"line":724},45,[62,726,80],{"class":79},[62,728,730],{"class":64,"line":729},46,[62,731,732],{"class":79},"    goodGay gg;\n",[62,734,736,739,741],{"class":64,"line":735},47,[62,737,738],{"class":79},"    gg.",[62,740,660],{"class":72},[62,742,386],{"class":79},[62,744,746],{"class":64,"line":745},48,[62,747,122],{"emptyLinePlaceholder":121},[62,749,751],{"class":64,"line":750},49,[62,752,310],{"class":79},[62,754,756],{"class":64,"line":755},50,[62,757,122],{"emptyLinePlaceholder":121},[62,759,761,763,765],{"class":64,"line":760},51,[62,762,366],{"class":68},[62,764,369],{"class":72},[62,766,372],{"class":79},[62,768,770],{"class":64,"line":769},52,[62,771,122],{"emptyLinePlaceholder":121},[62,773,775,777],{"class":64,"line":774},53,[62,776,383],{"class":72},[62,778,386],{"class":79},[62,780,782],{"class":64,"line":781},54,[62,783,122],{"emptyLinePlaceholder":121},[62,785,787,789,791],{"class":64,"line":786},55,[62,788,397],{"class":68},[62,790,400],{"class":154},[62,792,168],{"class":79},[62,794,796],{"class":64,"line":795},56,[62,797,310],{"class":79},[14,799,800,414],{},[411,801,413],{},[49,803,47],{"id":47},[52,805,807],{"className":54,"code":806,"language":56,"meta":57,"style":57},"\nclass Building;\nclass goodGay\n{\npublic:\n\n    goodGay();\n    void visit(); //只让visit函数作为Building的好朋友，可以发访问Building中私有内容\n    void visit2(); \n\nprivate:\n    Building *building;\n};\n\nclass Building\n{\n    //告诉编译器  goodGay类中的visit成员函数 是Building好朋友，可以访问私有内容\n    friend void goodGay::visit();\n\npublic:\n    Building();\n\npublic:\n    string m_SittingRoom; //客厅\nprivate:\n    string m_BedRoom;//卧室\n};\n\nBuilding::Building()\n{\n    this->m_SittingRoom = \"客厅\";\n    this->m_BedRoom = \"卧室\";\n}\n\ngoodGay::goodGay()\n{\n    building = new Building;\n}\n\nvoid goodGay::visit()\n{\n    cout \u003C\u003C \"好基友正在访问\" \u003C\u003C building->m_SittingRoom \u003C\u003C endl;\n    cout \u003C\u003C \"好基友正在访问\" \u003C\u003C building->m_BedRoom \u003C\u003C endl;\n}\n\nvoid goodGay::visit2()\n{\n    cout \u003C\u003C \"好基友正在访问\" \u003C\u003C building->m_SittingRoom \u003C\u003C endl;\n    //cout \u003C\u003C \"好基友正在访问\" \u003C\u003C building->m_BedRoom \u003C\u003C endl;\n}\n\nvoid test01()\n{\n    goodGay  gg;\n    gg.visit();\n\n}\n\nint main(){\n    \n    test01();\n\n    return 0;\n}\n",[59,808,809,813,821,827,831,835,839,845,857,867,871,875,883,887,891,897,901,906,920,924,928,934,938,942,948,952,958,962,966,976,980,992,1004,1008,1012,1022,1026,1036,1040,1044,1056,1060,1076,1092,1096,1100,1113,1117,1133,1138,1142,1146,1154,1158,1163,1171,1175,1180,1185,1194,1200,1207,1212,1221],{"__ignoreMap":57},[62,810,811],{"class":64,"line":65},[62,812,122],{"emptyLinePlaceholder":121},[62,814,815,817,819],{"class":64,"line":76},[62,816,69],{"class":68},[62,818,428],{"class":72},[62,820,168],{"class":79},[62,822,823,825],{"class":64,"line":83},[62,824,69],{"class":68},[62,826,437],{"class":72},[62,828,829],{"class":64,"line":90},[62,830,80],{"class":79},[62,832,833],{"class":64,"line":118},[62,834,128],{"class":68},[62,836,837],{"class":64,"line":125},[62,838,122],{"emptyLinePlaceholder":121},[62,840,841,843],{"class":64,"line":131},[62,842,342],{"class":72},[62,844,386],{"class":79},[62,846,847,849,851,854],{"class":64,"line":136},[62,848,460],{"class":68},[62,850,463],{"class":72},[62,852,853],{"class":79},"();",[62,855,856],{"class":86}," //只让visit函数作为Building的好朋友，可以发访问Building中私有内容\n",[62,858,859,861,864],{"class":64,"line":145},[62,860,460],{"class":68},[62,862,863],{"class":72}," visit2",[62,865,866],{"class":79},"(); \n",[62,868,869],{"class":64,"line":151},[62,870,122],{"emptyLinePlaceholder":121},[62,872,873],{"class":64,"line":171},[62,874,219],{"class":68},[62,876,877,879,881],{"class":64,"line":186},[62,878,478],{"class":79},[62,880,481],{"class":68},[62,882,484],{"class":79},[62,884,885],{"class":64,"line":192},[62,886,234],{"class":79},[62,888,889],{"class":64,"line":197},[62,890,122],{"emptyLinePlaceholder":121},[62,892,893,895],{"class":64,"line":202},[62,894,69],{"class":68},[62,896,73],{"class":72},[62,898,899],{"class":64,"line":211},[62,900,80],{"class":79},[62,902,903],{"class":64,"line":216},[62,904,905],{"class":86},"    //告诉编译器  goodGay类中的visit成员函数 是Building好朋友，可以访问私有内容\n",[62,907,908,910,912,914,916,918],{"class":64,"line":222},[62,909,93],{"class":68},[62,911,96],{"class":68},[62,913,99],{"class":72},[62,915,572],{"class":79},[62,917,660],{"class":72},[62,919,386],{"class":79},[62,921,922],{"class":64,"line":231},[62,923,122],{"emptyLinePlaceholder":121},[62,925,926],{"class":64,"line":237},[62,927,128],{"class":68},[62,929,930,932],{"class":64,"line":242},[62,931,139],{"class":72},[62,933,386],{"class":79},[62,935,936],{"class":64,"line":261},[62,937,122],{"emptyLinePlaceholder":121},[62,939,940],{"class":64,"line":266},[62,941,128],{"class":68},[62,943,944,946],{"class":64,"line":289},[62,945,205],{"class":79},[62,947,208],{"class":86},[62,949,950],{"class":64,"line":307},[62,951,219],{"class":68},[62,953,954,956],{"class":64,"line":313},[62,955,225],{"class":79},[62,957,557],{"class":86},[62,959,960],{"class":64,"line":318},[62,961,234],{"class":79},[62,963,964],{"class":64,"line":328},[62,965,122],{"emptyLinePlaceholder":121},[62,967,968,970,972,974],{"class":64,"line":333},[62,969,105],{"class":72},[62,971,572],{"class":79},[62,973,105],{"class":72},[62,975,142],{"class":79},[62,977,978],{"class":64,"line":339},[62,979,80],{"class":79},[62,981,982,984,986,988,990],{"class":64,"line":353},[62,983,585],{"class":154},[62,985,158],{"class":79},[62,987,161],{"class":68},[62,989,165],{"class":164},[62,991,168],{"class":79},[62,993,994,996,998,1000,1002],{"class":64,"line":358},[62,995,585],{"class":154},[62,997,176],{"class":79},[62,999,161],{"class":68},[62,1001,181],{"class":164},[62,1003,168],{"class":79},[62,1005,1006],{"class":64,"line":363},[62,1007,310],{"class":79},[62,1009,1010],{"class":64,"line":375},[62,1011,122],{"emptyLinePlaceholder":121},[62,1013,1014,1016,1018,1020],{"class":64,"line":380},[62,1015,618],{"class":72},[62,1017,572],{"class":79},[62,1019,618],{"class":72},[62,1021,142],{"class":79},[62,1023,1024],{"class":64,"line":389},[62,1025,80],{"class":79},[62,1027,1028,1030,1032,1034],{"class":64,"line":394},[62,1029,633],{"class":79},[62,1031,161],{"class":68},[62,1033,638],{"class":68},[62,1035,641],{"class":79},[62,1037,1038],{"class":64,"line":405},[62,1039,310],{"class":79},[62,1041,1042],{"class":64,"line":665},[62,1043,122],{"emptyLinePlaceholder":121},[62,1045,1046,1048,1050,1052,1054],{"class":64,"line":670},[62,1047,245],{"class":68},[62,1049,99],{"class":72},[62,1051,572],{"class":79},[62,1053,660],{"class":72},[62,1055,142],{"class":79},[62,1057,1058],{"class":64,"line":688},[62,1059,80],{"class":79},[62,1061,1062,1064,1066,1068,1070,1072,1074],{"class":64,"line":705},[62,1063,269],{"class":79},[62,1065,272],{"class":68},[62,1067,677],{"class":164},[62,1069,278],{"class":68},[62,1071,281],{"class":79},[62,1073,272],{"class":68},[62,1075,286],{"class":79},[62,1077,1078,1080,1082,1084,1086,1088,1090],{"class":64,"line":710},[62,1079,269],{"class":79},[62,1081,272],{"class":68},[62,1083,677],{"class":164},[62,1085,278],{"class":68},[62,1087,300],{"class":79},[62,1089,272],{"class":68},[62,1091,286],{"class":79},[62,1093,1094],{"class":64,"line":715},[62,1095,310],{"class":79},[62,1097,1098],{"class":64,"line":724},[62,1099,122],{"emptyLinePlaceholder":121},[62,1101,1102,1104,1106,1108,1111],{"class":64,"line":729},[62,1103,245],{"class":68},[62,1105,99],{"class":72},[62,1107,572],{"class":79},[62,1109,1110],{"class":72},"visit2",[62,1112,142],{"class":79},[62,1114,1115],{"class":64,"line":735},[62,1116,80],{"class":79},[62,1118,1119,1121,1123,1125,1127,1129,1131],{"class":64,"line":745},[62,1120,269],{"class":79},[62,1122,272],{"class":68},[62,1124,677],{"class":164},[62,1126,278],{"class":68},[62,1128,281],{"class":79},[62,1130,272],{"class":68},[62,1132,286],{"class":79},[62,1134,1135],{"class":64,"line":750},[62,1136,1137],{"class":86},"    //cout \u003C\u003C \"好基友正在访问\" \u003C\u003C building->m_BedRoom \u003C\u003C endl;\n",[62,1139,1140],{"class":64,"line":755},[62,1141,310],{"class":79},[62,1143,1144],{"class":64,"line":760},[62,1145,122],{"emptyLinePlaceholder":121},[62,1147,1148,1150,1152],{"class":64,"line":769},[62,1149,245],{"class":68},[62,1151,323],{"class":72},[62,1153,142],{"class":79},[62,1155,1156],{"class":64,"line":774},[62,1157,80],{"class":79},[62,1159,1160],{"class":64,"line":781},[62,1161,1162],{"class":79},"    goodGay  gg;\n",[62,1164,1165,1167,1169],{"class":64,"line":786},[62,1166,738],{"class":79},[62,1168,660],{"class":72},[62,1170,386],{"class":79},[62,1172,1173],{"class":64,"line":795},[62,1174,122],{"emptyLinePlaceholder":121},[62,1176,1178],{"class":64,"line":1177},57,[62,1179,310],{"class":79},[62,1181,1183],{"class":64,"line":1182},58,[62,1184,122],{"emptyLinePlaceholder":121},[62,1186,1188,1190,1192],{"class":64,"line":1187},59,[62,1189,366],{"class":68},[62,1191,369],{"class":72},[62,1193,372],{"class":79},[62,1195,1197],{"class":64,"line":1196},60,[62,1198,1199],{"class":79},"    \n",[62,1201,1203,1205],{"class":64,"line":1202},61,[62,1204,383],{"class":72},[62,1206,386],{"class":79},[62,1208,1210],{"class":64,"line":1209},62,[62,1211,122],{"emptyLinePlaceholder":121},[62,1213,1215,1217,1219],{"class":64,"line":1214},63,[62,1216,397],{"class":68},[62,1218,400],{"class":154},[62,1220,168],{"class":79},[62,1222,1224],{"class":64,"line":1223},64,[62,1225,310],{"class":79},[14,1227,1228,414],{},[411,1229,413],{},[10,1231,1232],{"id":1232},"运算符重载",[14,1234,1235],{},"运算符重载概念：对已有的运算符重新进行定义，赋予其另一种功能，以适应不同的数据类型",[49,1237,1238],{"id":1238},"加号运算符重载",[14,1240,1241],{},"作用：实现两个自定义数据类型相加的运算",[52,1243,1245],{"className":54,"code":1244,"language":56,"meta":57,"style":57},"class Person {\npublic:\n    Person() {};\n    Person(int a, int b)\n    {\n        this->m_A = a;\n        this->m_B = b;\n    }\n    //成员函数实现 + 号运算符重载\n    Person operator+(const Person& p) {\n        Person temp;\n        temp.m_A = this->m_A + p.m_A;\n        temp.m_B = this->m_B + p.m_B;\n        return temp;\n    }\n\npublic:\n    int m_A;\n    int m_B;\n};\n\n//全局函数实现 + 号运算符重载\n//Person operator+(const Person& p1, const Person& p2) {\n//  Person temp(0, 0);\n//  temp.m_A = p1.m_A + p2.m_A;\n//  temp.m_B = p1.m_B + p2.m_B;\n//  return temp;\n//}\n\n//运算符重载 可以发生函数重载 \nPerson operator+(const Person& p2, int val)  \n{\n    Person temp;\n    temp.m_A = p2.m_A + val;\n    temp.m_B = p2.m_B + val;\n    return temp;\n}\n\nvoid test() {\n\n    Person p1(10, 10);\n    Person p2(20, 20);\n\n    //成员函数方式\n    Person p3 = p2 + p1;  //相当于 p2.operaor+(p1)\n    cout \u003C\u003C \"mA:\" \u003C\u003C p3.m_A \u003C\u003C \" mB:\" \u003C\u003C p3.m_B \u003C\u003C endl;\n\n    Person p4 = p3 + 10; //相当于 operator+(p3,10)\n    cout \u003C\u003C \"mA:\" \u003C\u003C p4.m_A \u003C\u003C \" mB:\" \u003C\u003C p4.m_B \u003C\u003C endl;\n\n}\n\nint main() {\n\n    test();\n\n\n    return 0;\n}\n",[59,1246,1247,1257,1261,1269,1290,1294,1306,1318,1322,1327,1352,1357,1374,1390,1398,1402,1406,1410,1418,1425,1429,1433,1438,1443,1448,1453,1458,1463,1468,1472,1477,1507,1511,1516,1531,1545,1551,1555,1559,1569,1573,1592,1610,1614,1619,1637,1665,1669,1690,1716,1720,1724,1728,1736,1740,1747,1751,1755,1763],{"__ignoreMap":57},[62,1248,1249,1251,1254],{"class":64,"line":65},[62,1250,69],{"class":68},[62,1252,1253],{"class":72}," Person",[62,1255,1256],{"class":79}," {\n",[62,1258,1259],{"class":64,"line":76},[62,1260,128],{"class":68},[62,1262,1263,1266],{"class":64,"line":83},[62,1264,1265],{"class":72},"    Person",[62,1267,1268],{"class":79},"() {};\n",[62,1270,1271,1273,1275,1277,1280,1283,1285,1288],{"class":64,"line":90},[62,1272,1265],{"class":72},[62,1274,102],{"class":79},[62,1276,366],{"class":68},[62,1278,1279],{"class":111}," a",[62,1281,1282],{"class":79},", ",[62,1284,366],{"class":68},[62,1286,1287],{"class":111}," b",[62,1289,258],{"class":79},[62,1291,1292],{"class":64,"line":118},[62,1293,148],{"class":79},[62,1295,1296,1298,1301,1303],{"class":64,"line":125},[62,1297,155],{"class":154},[62,1299,1300],{"class":79},"->m_A ",[62,1302,161],{"class":68},[62,1304,1305],{"class":79}," a;\n",[62,1307,1308,1310,1313,1315],{"class":64,"line":131},[62,1309,155],{"class":154},[62,1311,1312],{"class":79},"->m_B ",[62,1314,161],{"class":68},[62,1316,1317],{"class":79}," b;\n",[62,1319,1320],{"class":64,"line":136},[62,1321,189],{"class":79},[62,1323,1324],{"class":64,"line":145},[62,1325,1326],{"class":86},"    //成员函数实现 + 号运算符重载\n",[62,1328,1329,1331,1334,1337,1339,1342,1344,1346,1349],{"class":64,"line":151},[62,1330,1265],{"class":72},[62,1332,1333],{"class":68}," operator",[62,1335,1336],{"class":72},"+",[62,1338,102],{"class":79},[62,1340,1341],{"class":68},"const",[62,1343,1253],{"class":72},[62,1345,347],{"class":68},[62,1347,1348],{"class":111}," p",[62,1350,1351],{"class":79},") {\n",[62,1353,1354],{"class":64,"line":171},[62,1355,1356],{"class":79},"        Person temp;\n",[62,1358,1359,1362,1364,1367,1369,1371],{"class":64,"line":186},[62,1360,1361],{"class":79},"        temp.m_A ",[62,1363,161],{"class":68},[62,1365,1366],{"class":154}," this",[62,1368,1300],{"class":79},[62,1370,1336],{"class":68},[62,1372,1373],{"class":79}," p.m_A;\n",[62,1375,1376,1379,1381,1383,1385,1387],{"class":64,"line":192},[62,1377,1378],{"class":79},"        temp.m_B ",[62,1380,161],{"class":68},[62,1382,1366],{"class":154},[62,1384,1312],{"class":79},[62,1386,1336],{"class":68},[62,1388,1389],{"class":79}," p.m_B;\n",[62,1391,1392,1395],{"class":64,"line":197},[62,1393,1394],{"class":68},"        return",[62,1396,1397],{"class":79}," temp;\n",[62,1399,1400],{"class":64,"line":202},[62,1401,189],{"class":79},[62,1403,1404],{"class":64,"line":211},[62,1405,122],{"emptyLinePlaceholder":121},[62,1407,1408],{"class":64,"line":216},[62,1409,128],{"class":68},[62,1411,1412,1415],{"class":64,"line":222},[62,1413,1414],{"class":68},"    int",[62,1416,1417],{"class":79}," m_A;\n",[62,1419,1420,1422],{"class":64,"line":231},[62,1421,1414],{"class":68},[62,1423,1424],{"class":79}," m_B;\n",[62,1426,1427],{"class":64,"line":237},[62,1428,234],{"class":79},[62,1430,1431],{"class":64,"line":242},[62,1432,122],{"emptyLinePlaceholder":121},[62,1434,1435],{"class":64,"line":261},[62,1436,1437],{"class":86},"//全局函数实现 + 号运算符重载\n",[62,1439,1440],{"class":64,"line":266},[62,1441,1442],{"class":86},"//Person operator+(const Person& p1, const Person& p2) {\n",[62,1444,1445],{"class":64,"line":289},[62,1446,1447],{"class":86},"//  Person temp(0, 0);\n",[62,1449,1450],{"class":64,"line":307},[62,1451,1452],{"class":86},"//  temp.m_A = p1.m_A + p2.m_A;\n",[62,1454,1455],{"class":64,"line":313},[62,1456,1457],{"class":86},"//  temp.m_B = p1.m_B + p2.m_B;\n",[62,1459,1460],{"class":64,"line":318},[62,1461,1462],{"class":86},"//  return temp;\n",[62,1464,1465],{"class":64,"line":328},[62,1466,1467],{"class":86},"//}\n",[62,1469,1470],{"class":64,"line":333},[62,1471,122],{"emptyLinePlaceholder":121},[62,1473,1474],{"class":64,"line":339},[62,1475,1476],{"class":86},"//运算符重载 可以发生函数重载 \n",[62,1478,1479,1482,1484,1486,1488,1490,1492,1494,1497,1499,1501,1504],{"class":64,"line":353},[62,1480,1481],{"class":72},"Person",[62,1483,1333],{"class":68},[62,1485,1336],{"class":72},[62,1487,102],{"class":79},[62,1489,1341],{"class":68},[62,1491,1253],{"class":72},[62,1493,347],{"class":68},[62,1495,1496],{"class":111}," p2",[62,1498,1282],{"class":79},[62,1500,366],{"class":68},[62,1502,1503],{"class":111}," val",[62,1505,1506],{"class":79},")  \n",[62,1508,1509],{"class":64,"line":358},[62,1510,80],{"class":79},[62,1512,1513],{"class":64,"line":363},[62,1514,1515],{"class":79},"    Person temp;\n",[62,1517,1518,1521,1523,1526,1528],{"class":64,"line":375},[62,1519,1520],{"class":79},"    temp.m_A ",[62,1522,161],{"class":68},[62,1524,1525],{"class":79}," p2.m_A ",[62,1527,1336],{"class":68},[62,1529,1530],{"class":79}," val;\n",[62,1532,1533,1536,1538,1541,1543],{"class":64,"line":380},[62,1534,1535],{"class":79},"    temp.m_B ",[62,1537,161],{"class":68},[62,1539,1540],{"class":79}," p2.m_B ",[62,1542,1336],{"class":68},[62,1544,1530],{"class":79},[62,1546,1547,1549],{"class":64,"line":389},[62,1548,397],{"class":68},[62,1550,1397],{"class":79},[62,1552,1553],{"class":64,"line":394},[62,1554,310],{"class":79},[62,1556,1557],{"class":64,"line":405},[62,1558,122],{"emptyLinePlaceholder":121},[62,1560,1561,1563,1566],{"class":64,"line":665},[62,1562,245],{"class":68},[62,1564,1565],{"class":72}," test",[62,1567,1568],{"class":79},"() {\n",[62,1570,1571],{"class":64,"line":670},[62,1572,122],{"emptyLinePlaceholder":121},[62,1574,1575,1578,1581,1583,1586,1588,1590],{"class":64,"line":688},[62,1576,1577],{"class":79},"    Person ",[62,1579,1580],{"class":72},"p1",[62,1582,102],{"class":79},[62,1584,1585],{"class":154},"10",[62,1587,1282],{"class":79},[62,1589,1585],{"class":154},[62,1591,115],{"class":79},[62,1593,1594,1596,1599,1601,1604,1606,1608],{"class":64,"line":705},[62,1595,1577],{"class":79},[62,1597,1598],{"class":72},"p2",[62,1600,102],{"class":79},[62,1602,1603],{"class":154},"20",[62,1605,1282],{"class":79},[62,1607,1603],{"class":154},[62,1609,115],{"class":79},[62,1611,1612],{"class":64,"line":710},[62,1613,122],{"emptyLinePlaceholder":121},[62,1615,1616],{"class":64,"line":715},[62,1617,1618],{"class":86},"    //成员函数方式\n",[62,1620,1621,1624,1626,1629,1631,1634],{"class":64,"line":724},[62,1622,1623],{"class":79},"    Person p3 ",[62,1625,161],{"class":68},[62,1627,1628],{"class":79}," p2 ",[62,1630,1336],{"class":68},[62,1632,1633],{"class":79}," p1;",[62,1635,1636],{"class":86},"  //相当于 p2.operaor+(p1)\n",[62,1638,1639,1641,1643,1646,1648,1651,1653,1656,1658,1661,1663],{"class":64,"line":729},[62,1640,269],{"class":79},[62,1642,272],{"class":68},[62,1644,1645],{"class":164}," \"mA:\"",[62,1647,278],{"class":68},[62,1649,1650],{"class":79}," p3.m_A ",[62,1652,272],{"class":68},[62,1654,1655],{"class":164}," \" mB:\"",[62,1657,278],{"class":68},[62,1659,1660],{"class":79}," p3.m_B ",[62,1662,272],{"class":68},[62,1664,286],{"class":79},[62,1666,1667],{"class":64,"line":735},[62,1668,122],{"emptyLinePlaceholder":121},[62,1670,1671,1674,1676,1679,1681,1684,1687],{"class":64,"line":745},[62,1672,1673],{"class":79},"    Person p4 ",[62,1675,161],{"class":68},[62,1677,1678],{"class":79}," p3 ",[62,1680,1336],{"class":68},[62,1682,1683],{"class":154}," 10",[62,1685,1686],{"class":79},";",[62,1688,1689],{"class":86}," //相当于 operator+(p3,10)\n",[62,1691,1692,1694,1696,1698,1700,1703,1705,1707,1709,1712,1714],{"class":64,"line":750},[62,1693,269],{"class":79},[62,1695,272],{"class":68},[62,1697,1645],{"class":164},[62,1699,278],{"class":68},[62,1701,1702],{"class":79}," p4.m_A ",[62,1704,272],{"class":68},[62,1706,1655],{"class":164},[62,1708,278],{"class":68},[62,1710,1711],{"class":79}," p4.m_B ",[62,1713,272],{"class":68},[62,1715,286],{"class":79},[62,1717,1718],{"class":64,"line":755},[62,1719,122],{"emptyLinePlaceholder":121},[62,1721,1722],{"class":64,"line":760},[62,1723,310],{"class":79},[62,1725,1726],{"class":64,"line":769},[62,1727,122],{"emptyLinePlaceholder":121},[62,1729,1730,1732,1734],{"class":64,"line":774},[62,1731,366],{"class":68},[62,1733,369],{"class":72},[62,1735,1568],{"class":79},[62,1737,1738],{"class":64,"line":781},[62,1739,122],{"emptyLinePlaceholder":121},[62,1741,1742,1745],{"class":64,"line":786},[62,1743,1744],{"class":72},"    test",[62,1746,386],{"class":79},[62,1748,1749],{"class":64,"line":795},[62,1750,122],{"emptyLinePlaceholder":121},[62,1752,1753],{"class":64,"line":1177},[62,1754,122],{"emptyLinePlaceholder":121},[62,1756,1757,1759,1761],{"class":64,"line":1182},[62,1758,397],{"class":68},[62,1760,400],{"class":154},[62,1762,168],{"class":79},[62,1764,1765],{"class":64,"line":1187},[62,1766,310],{"class":79},[14,1768,1769,414],{},[411,1770,413],{},[1772,1773,1774],"blockquote",{},[14,1775,1776],{},"总结1：对于内置的数据类型的表达式的的运算符是不可能改变的",[1772,1778,1779],{},[14,1780,1781],{},"总结2：不要滥用运算符重载",[49,1783,1784],{"id":1784},"左移运算符重载",[14,1786,1787],{},"作用：可以输出自定义数据类型",[52,1789,1791],{"className":54,"code":1790,"language":56,"meta":57,"style":57},"class Person {\n    friend ostream& operator\u003C\u003C(ostream& out, Person& p);\n\npublic:\n\n    Person(int a, int b)\n    {\n        this->m_A = a;\n        this->m_B = b;\n    }\n\n    //成员函数 实现不了  p \u003C\u003C cout 不是我们想要的效果\n    //void operator\u003C\u003C(Person& p){\n    //}\n\nprivate:\n    int m_A;\n    int m_B;\n};\n\n//全局函数实现左移重载\n//ostream对象只能有一个\nostream& operator\u003C\u003C(ostream& out, Person& p) {\n    out \u003C\u003C \"a:\" \u003C\u003C p.m_A \u003C\u003C \" b:\" \u003C\u003C p.m_B;\n    return out;\n}\n\nvoid test() {\n\n    Person p1(10, 20);\n\n    cout \u003C\u003C p1 \u003C\u003C \"hello world\" \u003C\u003C endl; //链式编程\n}\n\nint main() {\n\n    test();\n\n\n    return 0;\n}\n",[59,1792,1793,1801,1834,1838,1842,1846,1864,1868,1878,1888,1892,1896,1901,1906,1911,1915,1919,1925,1931,1935,1939,1944,1949,1977,2001,2008,2012,2016,2024,2028,2044,2048,2070,2074,2078,2086,2090,2096,2100,2104,2112],{"__ignoreMap":57},[62,1794,1795,1797,1799],{"class":64,"line":65},[62,1796,69],{"class":68},[62,1798,1253],{"class":72},[62,1800,1256],{"class":79},[62,1802,1803,1805,1808,1810,1812,1814,1816,1819,1821,1824,1826,1828,1830,1832],{"class":64,"line":76},[62,1804,93],{"class":68},[62,1806,1807],{"class":72}," ostream",[62,1809,347],{"class":68},[62,1811,1333],{"class":68},[62,1813,272],{"class":72},[62,1815,102],{"class":79},[62,1817,1818],{"class":72},"ostream",[62,1820,347],{"class":68},[62,1822,1823],{"class":111}," out",[62,1825,1282],{"class":79},[62,1827,1481],{"class":72},[62,1829,347],{"class":68},[62,1831,1348],{"class":111},[62,1833,115],{"class":79},[62,1835,1836],{"class":64,"line":83},[62,1837,122],{"emptyLinePlaceholder":121},[62,1839,1840],{"class":64,"line":90},[62,1841,128],{"class":68},[62,1843,1844],{"class":64,"line":118},[62,1845,122],{"emptyLinePlaceholder":121},[62,1847,1848,1850,1852,1854,1856,1858,1860,1862],{"class":64,"line":125},[62,1849,1265],{"class":72},[62,1851,102],{"class":79},[62,1853,366],{"class":68},[62,1855,1279],{"class":111},[62,1857,1282],{"class":79},[62,1859,366],{"class":68},[62,1861,1287],{"class":111},[62,1863,258],{"class":79},[62,1865,1866],{"class":64,"line":131},[62,1867,148],{"class":79},[62,1869,1870,1872,1874,1876],{"class":64,"line":136},[62,1871,155],{"class":154},[62,1873,1300],{"class":79},[62,1875,161],{"class":68},[62,1877,1305],{"class":79},[62,1879,1880,1882,1884,1886],{"class":64,"line":145},[62,1881,155],{"class":154},[62,1883,1312],{"class":79},[62,1885,161],{"class":68},[62,1887,1317],{"class":79},[62,1889,1890],{"class":64,"line":151},[62,1891,189],{"class":79},[62,1893,1894],{"class":64,"line":171},[62,1895,122],{"emptyLinePlaceholder":121},[62,1897,1898],{"class":64,"line":186},[62,1899,1900],{"class":86},"    //成员函数 实现不了  p \u003C\u003C cout 不是我们想要的效果\n",[62,1902,1903],{"class":64,"line":192},[62,1904,1905],{"class":86},"    //void operator\u003C\u003C(Person& p){\n",[62,1907,1908],{"class":64,"line":197},[62,1909,1910],{"class":86},"    //}\n",[62,1912,1913],{"class":64,"line":202},[62,1914,122],{"emptyLinePlaceholder":121},[62,1916,1917],{"class":64,"line":211},[62,1918,219],{"class":68},[62,1920,1921,1923],{"class":64,"line":216},[62,1922,1414],{"class":68},[62,1924,1417],{"class":79},[62,1926,1927,1929],{"class":64,"line":222},[62,1928,1414],{"class":68},[62,1930,1424],{"class":79},[62,1932,1933],{"class":64,"line":231},[62,1934,234],{"class":79},[62,1936,1937],{"class":64,"line":237},[62,1938,122],{"emptyLinePlaceholder":121},[62,1940,1941],{"class":64,"line":242},[62,1942,1943],{"class":86},"//全局函数实现左移重载\n",[62,1945,1946],{"class":64,"line":261},[62,1947,1948],{"class":86},"//ostream对象只能有一个\n",[62,1950,1951,1953,1955,1957,1959,1961,1963,1965,1967,1969,1971,1973,1975],{"class":64,"line":266},[62,1952,1818],{"class":72},[62,1954,347],{"class":68},[62,1956,1333],{"class":68},[62,1958,272],{"class":72},[62,1960,102],{"class":79},[62,1962,1818],{"class":72},[62,1964,347],{"class":68},[62,1966,1823],{"class":111},[62,1968,1282],{"class":79},[62,1970,1481],{"class":72},[62,1972,347],{"class":68},[62,1974,1348],{"class":111},[62,1976,1351],{"class":79},[62,1978,1979,1982,1984,1987,1989,1992,1994,1997,1999],{"class":64,"line":289},[62,1980,1981],{"class":79},"    out ",[62,1983,272],{"class":68},[62,1985,1986],{"class":164}," \"a:\"",[62,1988,278],{"class":68},[62,1990,1991],{"class":79}," p.m_A ",[62,1993,272],{"class":68},[62,1995,1996],{"class":164}," \" b:\"",[62,1998,278],{"class":68},[62,2000,1389],{"class":79},[62,2002,2003,2005],{"class":64,"line":307},[62,2004,397],{"class":68},[62,2006,2007],{"class":79}," out;\n",[62,2009,2010],{"class":64,"line":313},[62,2011,310],{"class":79},[62,2013,2014],{"class":64,"line":318},[62,2015,122],{"emptyLinePlaceholder":121},[62,2017,2018,2020,2022],{"class":64,"line":328},[62,2019,245],{"class":68},[62,2021,1565],{"class":72},[62,2023,1568],{"class":79},[62,2025,2026],{"class":64,"line":333},[62,2027,122],{"emptyLinePlaceholder":121},[62,2029,2030,2032,2034,2036,2038,2040,2042],{"class":64,"line":339},[62,2031,1577],{"class":79},[62,2033,1580],{"class":72},[62,2035,102],{"class":79},[62,2037,1585],{"class":154},[62,2039,1282],{"class":79},[62,2041,1603],{"class":154},[62,2043,115],{"class":79},[62,2045,2046],{"class":64,"line":353},[62,2047,122],{"emptyLinePlaceholder":121},[62,2049,2050,2052,2054,2057,2059,2062,2064,2067],{"class":64,"line":358},[62,2051,269],{"class":79},[62,2053,272],{"class":68},[62,2055,2056],{"class":79}," p1 ",[62,2058,272],{"class":68},[62,2060,2061],{"class":164}," \"hello world\"",[62,2063,278],{"class":68},[62,2065,2066],{"class":79}," endl;",[62,2068,2069],{"class":86}," //链式编程\n",[62,2071,2072],{"class":64,"line":363},[62,2073,310],{"class":79},[62,2075,2076],{"class":64,"line":375},[62,2077,122],{"emptyLinePlaceholder":121},[62,2079,2080,2082,2084],{"class":64,"line":380},[62,2081,366],{"class":68},[62,2083,369],{"class":72},[62,2085,1568],{"class":79},[62,2087,2088],{"class":64,"line":389},[62,2089,122],{"emptyLinePlaceholder":121},[62,2091,2092,2094],{"class":64,"line":394},[62,2093,1744],{"class":72},[62,2095,386],{"class":79},[62,2097,2098],{"class":64,"line":405},[62,2099,122],{"emptyLinePlaceholder":121},[62,2101,2102],{"class":64,"line":665},[62,2103,122],{"emptyLinePlaceholder":121},[62,2105,2106,2108,2110],{"class":64,"line":670},[62,2107,397],{"class":68},[62,2109,400],{"class":154},[62,2111,168],{"class":79},[62,2113,2114],{"class":64,"line":688},[62,2115,310],{"class":79},[14,2117,2118,414],{},[411,2119,413],{},[1772,2121,2122],{},[14,2123,2124],{},"总结：重载左移运算符配合友元可以实现输出自定义数据类型",[49,2126,2127],{"id":2127},"递增运算符重载",[14,2129,2130],{},"作用： 通过重载递增运算符，实现自己的整型数据",[52,2132,2134],{"className":54,"code":2133,"language":56,"meta":57,"style":57},"\nclass MyInteger {\n\n    friend ostream& operator\u003C\u003C(ostream& out, MyInteger myint);\n\npublic:\n    MyInteger() {\n        m_Num = 0;\n    }\n    //前置++\n    MyInteger& operator++() {\n        //先++\n        m_Num++;\n        //再返回\n        return *this;\n    }\n\n    //后置++\n    MyInteger operator++(int) {\n        //先返回\n        MyInteger temp = *this; //记录当前本身的值，然后让本身的值加1，但是返回的是以前的值，达到先返回后++；\n        m_Num++;\n        return temp;\n    }\n\nprivate:\n    int m_Num;\n};\n\nostream& operator\u003C\u003C(ostream& out, MyInteger myint) {\n    out \u003C\u003C myint.m_Num;\n    return out;\n}\n\n//前置++ 先++ 再返回\nvoid test01() {\n    MyInteger myInt;\n    cout \u003C\u003C ++myInt \u003C\u003C endl;\n    cout \u003C\u003C myInt \u003C\u003C endl;\n}\n\n//后置++ 先返回 再++\nvoid test02() {\n\n    MyInteger myInt;\n    cout \u003C\u003C myInt++ \u003C\u003C endl;\n    cout \u003C\u003C myInt \u003C\u003C endl;\n}\n\nint main() {\n\n    test01();\n    //test02();\n\n\n    return 0;\n}\n",[59,2135,2136,2140,2149,2153,2183,2187,2191,2198,2209,2213,2218,2231,2236,2245,2250,2261,2265,2269,2274,2288,2293,2309,2317,2323,2327,2331,2335,2342,2346,2350,2376,2385,2391,2395,2399,2404,2412,2417,2433,2446,2450,2454,2459,2468,2472,2476,2491,2503,2507,2511,2519,2523,2529,2534,2538,2542,2550],{"__ignoreMap":57},[62,2137,2138],{"class":64,"line":65},[62,2139,122],{"emptyLinePlaceholder":121},[62,2141,2142,2144,2147],{"class":64,"line":76},[62,2143,69],{"class":68},[62,2145,2146],{"class":72}," MyInteger",[62,2148,1256],{"class":79},[62,2150,2151],{"class":64,"line":83},[62,2152,122],{"emptyLinePlaceholder":121},[62,2154,2155,2157,2159,2161,2163,2165,2167,2169,2171,2173,2175,2178,2181],{"class":64,"line":90},[62,2156,93],{"class":68},[62,2158,1807],{"class":72},[62,2160,347],{"class":68},[62,2162,1333],{"class":68},[62,2164,272],{"class":72},[62,2166,102],{"class":79},[62,2168,1818],{"class":72},[62,2170,347],{"class":68},[62,2172,1823],{"class":111},[62,2174,1282],{"class":79},[62,2176,2177],{"class":72},"MyInteger",[62,2179,2180],{"class":111}," myint",[62,2182,115],{"class":79},[62,2184,2185],{"class":64,"line":118},[62,2186,122],{"emptyLinePlaceholder":121},[62,2188,2189],{"class":64,"line":125},[62,2190,128],{"class":68},[62,2192,2193,2196],{"class":64,"line":131},[62,2194,2195],{"class":72},"    MyInteger",[62,2197,1568],{"class":79},[62,2199,2200,2203,2205,2207],{"class":64,"line":136},[62,2201,2202],{"class":79},"        m_Num ",[62,2204,161],{"class":68},[62,2206,400],{"class":154},[62,2208,168],{"class":79},[62,2210,2211],{"class":64,"line":145},[62,2212,189],{"class":79},[62,2214,2215],{"class":64,"line":151},[62,2216,2217],{"class":86},"    //前置++\n",[62,2219,2220,2222,2224,2226,2229],{"class":64,"line":171},[62,2221,2195],{"class":72},[62,2223,347],{"class":68},[62,2225,1333],{"class":68},[62,2227,2228],{"class":72},"++",[62,2230,1568],{"class":79},[62,2232,2233],{"class":64,"line":186},[62,2234,2235],{"class":86},"        //先++\n",[62,2237,2238,2241,2243],{"class":64,"line":192},[62,2239,2240],{"class":79},"        m_Num",[62,2242,2228],{"class":68},[62,2244,168],{"class":79},[62,2246,2247],{"class":64,"line":197},[62,2248,2249],{"class":86},"        //再返回\n",[62,2251,2252,2254,2256,2259],{"class":64,"line":202},[62,2253,1394],{"class":68},[62,2255,108],{"class":68},[62,2257,2258],{"class":154},"this",[62,2260,168],{"class":79},[62,2262,2263],{"class":64,"line":211},[62,2264,189],{"class":79},[62,2266,2267],{"class":64,"line":216},[62,2268,122],{"emptyLinePlaceholder":121},[62,2270,2271],{"class":64,"line":222},[62,2272,2273],{"class":86},"    //后置++\n",[62,2275,2276,2278,2280,2282,2284,2286],{"class":64,"line":231},[62,2277,2195],{"class":72},[62,2279,1333],{"class":68},[62,2281,2228],{"class":72},[62,2283,102],{"class":79},[62,2285,366],{"class":68},[62,2287,1351],{"class":79},[62,2289,2290],{"class":64,"line":237},[62,2291,2292],{"class":86},"        //先返回\n",[62,2294,2295,2298,2300,2302,2304,2306],{"class":64,"line":242},[62,2296,2297],{"class":79},"        MyInteger temp ",[62,2299,161],{"class":68},[62,2301,108],{"class":68},[62,2303,2258],{"class":154},[62,2305,1686],{"class":79},[62,2307,2308],{"class":86}," //记录当前本身的值，然后让本身的值加1，但是返回的是以前的值，达到先返回后++；\n",[62,2310,2311,2313,2315],{"class":64,"line":261},[62,2312,2240],{"class":79},[62,2314,2228],{"class":68},[62,2316,168],{"class":79},[62,2318,2319,2321],{"class":64,"line":266},[62,2320,1394],{"class":68},[62,2322,1397],{"class":79},[62,2324,2325],{"class":64,"line":289},[62,2326,189],{"class":79},[62,2328,2329],{"class":64,"line":307},[62,2330,122],{"emptyLinePlaceholder":121},[62,2332,2333],{"class":64,"line":313},[62,2334,219],{"class":68},[62,2336,2337,2339],{"class":64,"line":318},[62,2338,1414],{"class":68},[62,2340,2341],{"class":79}," m_Num;\n",[62,2343,2344],{"class":64,"line":328},[62,2345,234],{"class":79},[62,2347,2348],{"class":64,"line":333},[62,2349,122],{"emptyLinePlaceholder":121},[62,2351,2352,2354,2356,2358,2360,2362,2364,2366,2368,2370,2372,2374],{"class":64,"line":339},[62,2353,1818],{"class":72},[62,2355,347],{"class":68},[62,2357,1333],{"class":68},[62,2359,272],{"class":72},[62,2361,102],{"class":79},[62,2363,1818],{"class":72},[62,2365,347],{"class":68},[62,2367,1823],{"class":111},[62,2369,1282],{"class":79},[62,2371,2177],{"class":72},[62,2373,2180],{"class":111},[62,2375,1351],{"class":79},[62,2377,2378,2380,2382],{"class":64,"line":353},[62,2379,1981],{"class":79},[62,2381,272],{"class":68},[62,2383,2384],{"class":79}," myint.m_Num;\n",[62,2386,2387,2389],{"class":64,"line":358},[62,2388,397],{"class":68},[62,2390,2007],{"class":79},[62,2392,2393],{"class":64,"line":363},[62,2394,310],{"class":79},[62,2396,2397],{"class":64,"line":375},[62,2398,122],{"emptyLinePlaceholder":121},[62,2400,2401],{"class":64,"line":380},[62,2402,2403],{"class":86},"//前置++ 先++ 再返回\n",[62,2405,2406,2408,2410],{"class":64,"line":389},[62,2407,245],{"class":68},[62,2409,323],{"class":72},[62,2411,1568],{"class":79},[62,2413,2414],{"class":64,"line":394},[62,2415,2416],{"class":79},"    MyInteger myInt;\n",[62,2418,2419,2421,2423,2426,2429,2431],{"class":64,"line":405},[62,2420,269],{"class":79},[62,2422,272],{"class":68},[62,2424,2425],{"class":68}," ++",[62,2427,2428],{"class":79},"myInt ",[62,2430,272],{"class":68},[62,2432,286],{"class":79},[62,2434,2435,2437,2439,2442,2444],{"class":64,"line":665},[62,2436,269],{"class":79},[62,2438,272],{"class":68},[62,2440,2441],{"class":79}," myInt ",[62,2443,272],{"class":68},[62,2445,286],{"class":79},[62,2447,2448],{"class":64,"line":670},[62,2449,310],{"class":79},[62,2451,2452],{"class":64,"line":688},[62,2453,122],{"emptyLinePlaceholder":121},[62,2455,2456],{"class":64,"line":705},[62,2457,2458],{"class":86},"//后置++ 先返回 再++\n",[62,2460,2461,2463,2466],{"class":64,"line":710},[62,2462,245],{"class":68},[62,2464,2465],{"class":72}," test02",[62,2467,1568],{"class":79},[62,2469,2470],{"class":64,"line":715},[62,2471,122],{"emptyLinePlaceholder":121},[62,2473,2474],{"class":64,"line":724},[62,2475,2416],{"class":79},[62,2477,2478,2480,2482,2485,2487,2489],{"class":64,"line":729},[62,2479,269],{"class":79},[62,2481,272],{"class":68},[62,2483,2484],{"class":79}," myInt",[62,2486,2228],{"class":68},[62,2488,278],{"class":68},[62,2490,286],{"class":79},[62,2492,2493,2495,2497,2499,2501],{"class":64,"line":735},[62,2494,269],{"class":79},[62,2496,272],{"class":68},[62,2498,2441],{"class":79},[62,2500,272],{"class":68},[62,2502,286],{"class":79},[62,2504,2505],{"class":64,"line":745},[62,2506,310],{"class":79},[62,2508,2509],{"class":64,"line":750},[62,2510,122],{"emptyLinePlaceholder":121},[62,2512,2513,2515,2517],{"class":64,"line":755},[62,2514,366],{"class":68},[62,2516,369],{"class":72},[62,2518,1568],{"class":79},[62,2520,2521],{"class":64,"line":760},[62,2522,122],{"emptyLinePlaceholder":121},[62,2524,2525,2527],{"class":64,"line":769},[62,2526,383],{"class":72},[62,2528,386],{"class":79},[62,2530,2531],{"class":64,"line":774},[62,2532,2533],{"class":86},"    //test02();\n",[62,2535,2536],{"class":64,"line":781},[62,2537,122],{"emptyLinePlaceholder":121},[62,2539,2540],{"class":64,"line":786},[62,2541,122],{"emptyLinePlaceholder":121},[62,2543,2544,2546,2548],{"class":64,"line":795},[62,2545,397],{"class":68},[62,2547,400],{"class":154},[62,2549,168],{"class":79},[62,2551,2552],{"class":64,"line":1177},[62,2553,310],{"class":79},[14,2555,2556,414],{},[411,2557,413],{},[1772,2559,2560],{},[14,2561,2562],{},"总结： 前置递增返回引用，后置递增返回值",[49,2564,2565],{"id":2565},"赋值运算符重载",[14,2567,2568],{},"c++编译器至少给一个类添加4个函数",[2570,2571,2572,2575,2578,2581],"ol",{},[39,2573,2574],{},"默认构造函数(无参，函数体为空)",[39,2576,2577],{},"默认析构函数(无参，函数体为空)",[39,2579,2580],{},"默认拷贝构造函数，对属性进行值拷贝",[39,2582,2583],{},"赋值运算符 operator=, 对属性进行值拷贝",[14,2585,2586],{},"如果类中有属性指向堆区，做赋值操作时也会出现深浅拷贝问题",[14,2588,2589],{},[411,2590,2591],{},"示例：",[52,2593,2595],{"className":54,"code":2594,"language":56,"meta":57,"style":57},"class Person\n{\npublic:\n\n    Person(int age)\n    {\n        //将年龄数据开辟到堆区\n        m_Age = new int(age);\n    }\n\n    //重载赋值运算符 \n    Person& operator=(Person &p)\n    {\n        if (m_Age != NULL)\n        {\n            delete m_Age;\n            m_Age = NULL;\n        }\n        //编译器提供的代码是浅拷贝\n        //m_Age = p.m_Age;\n\n        //提供深拷贝 解决浅拷贝的问题\n        m_Age = new int(*p.m_Age);\n\n        //返回自身\n        return *this;\n    }\n\n    ~Person()\n    {\n        if (m_Age != NULL)\n        {\n            delete m_Age;\n            m_Age = NULL;\n        }\n    }\n\n    //年龄的指针\n    int *m_Age;\n\n};\n\nvoid test01()\n{\n    Person p1(18);\n\n    Person p2(20);\n\n    Person p3(30);\n\n    p3 = p2 = p1; //赋值操作\n\n    cout \u003C\u003C \"p1的年龄为：\" \u003C\u003C *p1.m_Age \u003C\u003C endl;\n\n    cout \u003C\u003C \"p2的年龄为：\" \u003C\u003C *p2.m_Age \u003C\u003C endl;\n\n    cout \u003C\u003C \"p3的年龄为：\" \u003C\u003C *p3.m_Age \u003C\u003C endl;\n}\n\nint main() {\n\n    test01();\n\n    //int a = 10;\n    //int b = 20;\n    //int c = 30;\n\n    //c = b = a;\n    //cout \u003C\u003C \"a = \" \u003C\u003C a \u003C\u003C endl;\n    //cout \u003C\u003C \"b = \" \u003C\u003C b \u003C\u003C endl;\n    //cout \u003C\u003C \"c = \" \u003C\u003C c \u003C\u003C endl;\n\n\n    return 0;\n}\n",[59,2596,2597,2604,2608,2612,2616,2629,2633,2638,2653,2657,2661,2666,2687,2691,2707,2712,2720,2731,2736,2741,2746,2750,2755,2772,2776,2781,2791,2795,2799,2806,2810,2822,2826,2832,2842,2846,2850,2854,2859,2868,2872,2876,2880,2888,2892,2905,2909,2921,2925,2939,2943,2959,2963,2983,2987,3007,3011,3031,3035,3039,3047,3051,3057,3061,3066,3072,3078,3083,3089,3095,3101,3107,3112,3117,3126],{"__ignoreMap":57},[62,2598,2599,2601],{"class":64,"line":65},[62,2600,69],{"class":68},[62,2602,2603],{"class":72}," Person\n",[62,2605,2606],{"class":64,"line":76},[62,2607,80],{"class":79},[62,2609,2610],{"class":64,"line":83},[62,2611,128],{"class":68},[62,2613,2614],{"class":64,"line":90},[62,2615,122],{"emptyLinePlaceholder":121},[62,2617,2618,2620,2622,2624,2627],{"class":64,"line":118},[62,2619,1265],{"class":72},[62,2621,102],{"class":79},[62,2623,366],{"class":68},[62,2625,2626],{"class":111}," age",[62,2628,258],{"class":79},[62,2630,2631],{"class":64,"line":125},[62,2632,148],{"class":79},[62,2634,2635],{"class":64,"line":131},[62,2636,2637],{"class":86},"        //将年龄数据开辟到堆区\n",[62,2639,2640,2643,2645,2647,2650],{"class":64,"line":136},[62,2641,2642],{"class":79},"        m_Age ",[62,2644,161],{"class":68},[62,2646,638],{"class":68},[62,2648,2649],{"class":68}," int",[62,2651,2652],{"class":79},"(age);\n",[62,2654,2655],{"class":64,"line":145},[62,2656,189],{"class":79},[62,2658,2659],{"class":64,"line":151},[62,2660,122],{"emptyLinePlaceholder":121},[62,2662,2663],{"class":64,"line":171},[62,2664,2665],{"class":86},"    //重载赋值运算符 \n",[62,2667,2668,2670,2672,2674,2676,2678,2680,2683,2685],{"class":64,"line":186},[62,2669,1265],{"class":72},[62,2671,347],{"class":68},[62,2673,1333],{"class":68},[62,2675,161],{"class":72},[62,2677,102],{"class":79},[62,2679,1481],{"class":72},[62,2681,2682],{"class":68}," &",[62,2684,14],{"class":111},[62,2686,258],{"class":79},[62,2688,2689],{"class":64,"line":192},[62,2690,148],{"class":79},[62,2692,2693,2696,2699,2702,2705],{"class":64,"line":197},[62,2694,2695],{"class":68},"        if",[62,2697,2698],{"class":79}," (m_Age ",[62,2700,2701],{"class":68},"!=",[62,2703,2704],{"class":154}," NULL",[62,2706,258],{"class":79},[62,2708,2709],{"class":64,"line":202},[62,2710,2711],{"class":79},"        {\n",[62,2713,2714,2717],{"class":64,"line":211},[62,2715,2716],{"class":68},"            delete",[62,2718,2719],{"class":79}," m_Age;\n",[62,2721,2722,2725,2727,2729],{"class":64,"line":216},[62,2723,2724],{"class":79},"            m_Age ",[62,2726,161],{"class":68},[62,2728,2704],{"class":154},[62,2730,168],{"class":79},[62,2732,2733],{"class":64,"line":222},[62,2734,2735],{"class":79},"        }\n",[62,2737,2738],{"class":64,"line":231},[62,2739,2740],{"class":86},"        //编译器提供的代码是浅拷贝\n",[62,2742,2743],{"class":64,"line":237},[62,2744,2745],{"class":86},"        //m_Age = p.m_Age;\n",[62,2747,2748],{"class":64,"line":242},[62,2749,122],{"emptyLinePlaceholder":121},[62,2751,2752],{"class":64,"line":261},[62,2753,2754],{"class":86},"        //提供深拷贝 解决浅拷贝的问题\n",[62,2756,2757,2759,2761,2763,2765,2767,2769],{"class":64,"line":266},[62,2758,2642],{"class":79},[62,2760,161],{"class":68},[62,2762,638],{"class":68},[62,2764,2649],{"class":68},[62,2766,102],{"class":79},[62,2768,481],{"class":68},[62,2770,2771],{"class":79},"p.m_Age);\n",[62,2773,2774],{"class":64,"line":289},[62,2775,122],{"emptyLinePlaceholder":121},[62,2777,2778],{"class":64,"line":307},[62,2779,2780],{"class":86},"        //返回自身\n",[62,2782,2783,2785,2787,2789],{"class":64,"line":313},[62,2784,1394],{"class":68},[62,2786,108],{"class":68},[62,2788,2258],{"class":154},[62,2790,168],{"class":79},[62,2792,2793],{"class":64,"line":318},[62,2794,189],{"class":79},[62,2796,2797],{"class":64,"line":328},[62,2798,122],{"emptyLinePlaceholder":121},[62,2800,2801,2804],{"class":64,"line":333},[62,2802,2803],{"class":72},"    ~Person",[62,2805,142],{"class":79},[62,2807,2808],{"class":64,"line":339},[62,2809,148],{"class":79},[62,2811,2812,2814,2816,2818,2820],{"class":64,"line":353},[62,2813,2695],{"class":68},[62,2815,2698],{"class":79},[62,2817,2701],{"class":68},[62,2819,2704],{"class":154},[62,2821,258],{"class":79},[62,2823,2824],{"class":64,"line":358},[62,2825,2711],{"class":79},[62,2827,2828,2830],{"class":64,"line":363},[62,2829,2716],{"class":68},[62,2831,2719],{"class":79},[62,2833,2834,2836,2838,2840],{"class":64,"line":375},[62,2835,2724],{"class":79},[62,2837,161],{"class":68},[62,2839,2704],{"class":154},[62,2841,168],{"class":79},[62,2843,2844],{"class":64,"line":380},[62,2845,2735],{"class":79},[62,2847,2848],{"class":64,"line":389},[62,2849,189],{"class":79},[62,2851,2852],{"class":64,"line":394},[62,2853,122],{"emptyLinePlaceholder":121},[62,2855,2856],{"class":64,"line":405},[62,2857,2858],{"class":86},"    //年龄的指针\n",[62,2860,2861,2863,2865],{"class":64,"line":665},[62,2862,1414],{"class":68},[62,2864,108],{"class":68},[62,2866,2867],{"class":79},"m_Age;\n",[62,2869,2870],{"class":64,"line":670},[62,2871,122],{"emptyLinePlaceholder":121},[62,2873,2874],{"class":64,"line":688},[62,2875,234],{"class":79},[62,2877,2878],{"class":64,"line":705},[62,2879,122],{"emptyLinePlaceholder":121},[62,2881,2882,2884,2886],{"class":64,"line":710},[62,2883,245],{"class":68},[62,2885,323],{"class":72},[62,2887,142],{"class":79},[62,2889,2890],{"class":64,"line":715},[62,2891,80],{"class":79},[62,2893,2894,2896,2898,2900,2903],{"class":64,"line":724},[62,2895,1577],{"class":79},[62,2897,1580],{"class":72},[62,2899,102],{"class":79},[62,2901,2902],{"class":154},"18",[62,2904,115],{"class":79},[62,2906,2907],{"class":64,"line":729},[62,2908,122],{"emptyLinePlaceholder":121},[62,2910,2911,2913,2915,2917,2919],{"class":64,"line":735},[62,2912,1577],{"class":79},[62,2914,1598],{"class":72},[62,2916,102],{"class":79},[62,2918,1603],{"class":154},[62,2920,115],{"class":79},[62,2922,2923],{"class":64,"line":745},[62,2924,122],{"emptyLinePlaceholder":121},[62,2926,2927,2929,2932,2934,2937],{"class":64,"line":750},[62,2928,1577],{"class":79},[62,2930,2931],{"class":72},"p3",[62,2933,102],{"class":79},[62,2935,2936],{"class":154},"30",[62,2938,115],{"class":79},[62,2940,2941],{"class":64,"line":755},[62,2942,122],{"emptyLinePlaceholder":121},[62,2944,2945,2948,2950,2952,2954,2956],{"class":64,"line":760},[62,2946,2947],{"class":79},"    p3 ",[62,2949,161],{"class":68},[62,2951,1628],{"class":79},[62,2953,161],{"class":68},[62,2955,1633],{"class":79},[62,2957,2958],{"class":86}," //赋值操作\n",[62,2960,2961],{"class":64,"line":769},[62,2962,122],{"emptyLinePlaceholder":121},[62,2964,2965,2967,2969,2972,2974,2976,2979,2981],{"class":64,"line":774},[62,2966,269],{"class":79},[62,2968,272],{"class":68},[62,2970,2971],{"class":164}," \"p1的年龄为：\"",[62,2973,278],{"class":68},[62,2975,108],{"class":68},[62,2977,2978],{"class":79},"p1.m_Age ",[62,2980,272],{"class":68},[62,2982,286],{"class":79},[62,2984,2985],{"class":64,"line":781},[62,2986,122],{"emptyLinePlaceholder":121},[62,2988,2989,2991,2993,2996,2998,3000,3003,3005],{"class":64,"line":786},[62,2990,269],{"class":79},[62,2992,272],{"class":68},[62,2994,2995],{"class":164}," \"p2的年龄为：\"",[62,2997,278],{"class":68},[62,2999,108],{"class":68},[62,3001,3002],{"class":79},"p2.m_Age ",[62,3004,272],{"class":68},[62,3006,286],{"class":79},[62,3008,3009],{"class":64,"line":795},[62,3010,122],{"emptyLinePlaceholder":121},[62,3012,3013,3015,3017,3020,3022,3024,3027,3029],{"class":64,"line":1177},[62,3014,269],{"class":79},[62,3016,272],{"class":68},[62,3018,3019],{"class":164}," \"p3的年龄为：\"",[62,3021,278],{"class":68},[62,3023,108],{"class":68},[62,3025,3026],{"class":79},"p3.m_Age ",[62,3028,272],{"class":68},[62,3030,286],{"class":79},[62,3032,3033],{"class":64,"line":1182},[62,3034,310],{"class":79},[62,3036,3037],{"class":64,"line":1187},[62,3038,122],{"emptyLinePlaceholder":121},[62,3040,3041,3043,3045],{"class":64,"line":1196},[62,3042,366],{"class":68},[62,3044,369],{"class":72},[62,3046,1568],{"class":79},[62,3048,3049],{"class":64,"line":1202},[62,3050,122],{"emptyLinePlaceholder":121},[62,3052,3053,3055],{"class":64,"line":1209},[62,3054,383],{"class":72},[62,3056,386],{"class":79},[62,3058,3059],{"class":64,"line":1214},[62,3060,122],{"emptyLinePlaceholder":121},[62,3062,3063],{"class":64,"line":1223},[62,3064,3065],{"class":86},"    //int a = 10;\n",[62,3067,3069],{"class":64,"line":3068},65,[62,3070,3071],{"class":86},"    //int b = 20;\n",[62,3073,3075],{"class":64,"line":3074},66,[62,3076,3077],{"class":86},"    //int c = 30;\n",[62,3079,3081],{"class":64,"line":3080},67,[62,3082,122],{"emptyLinePlaceholder":121},[62,3084,3086],{"class":64,"line":3085},68,[62,3087,3088],{"class":86},"    //c = b = a;\n",[62,3090,3092],{"class":64,"line":3091},69,[62,3093,3094],{"class":86},"    //cout \u003C\u003C \"a = \" \u003C\u003C a \u003C\u003C endl;\n",[62,3096,3098],{"class":64,"line":3097},70,[62,3099,3100],{"class":86},"    //cout \u003C\u003C \"b = \" \u003C\u003C b \u003C\u003C endl;\n",[62,3102,3104],{"class":64,"line":3103},71,[62,3105,3106],{"class":86},"    //cout \u003C\u003C \"c = \" \u003C\u003C c \u003C\u003C endl;\n",[62,3108,3110],{"class":64,"line":3109},72,[62,3111,122],{"emptyLinePlaceholder":121},[62,3113,3115],{"class":64,"line":3114},73,[62,3116,122],{"emptyLinePlaceholder":121},[62,3118,3120,3122,3124],{"class":64,"line":3119},74,[62,3121,397],{"class":68},[62,3123,400],{"class":154},[62,3125,168],{"class":79},[62,3127,3129],{"class":64,"line":3128},75,[62,3130,310],{"class":79},[14,3132,3133,414],{},[411,3134,413],{},[49,3136,3137],{"id":3137},"关系运算符重载",[14,3139,3140],{},"**作用：**重载关系运算符，可以让两个自定义类型对象进行对比操作",[14,3142,3143],{},[411,3144,2591],{},[52,3146,3148],{"className":54,"code":3147,"language":56,"meta":57,"style":57},"class Person\n{\npublic:\n    Person(string name, int age)\n    {\n        this->m_Name = name;\n        this->m_Age = age;\n    };\n\n    bool operator==(Person & p)\n    {\n        if (this->m_Name == p.m_Name && this->m_Age == p.m_Age)\n        {\n            return true;\n        }\n        else\n        {\n            return false;\n        }\n    }\n\n    bool operator!=(Person & p)\n    {\n        if (this->m_Name == p.m_Name && this->m_Age == p.m_Age)\n        {\n            return false;\n        }\n        else\n        {\n            return true;\n        }\n    }\n\n    string m_Name;\n    int m_Age;\n};\n\nvoid test01()\n{\n    //int a = 0;\n    //int b = 0;\n\n    Person a(\"孙悟空\", 18);\n    Person b(\"孙悟空\", 18);\n\n    if (a == b)\n    {\n        cout \u003C\u003C \"a和b相等\" \u003C\u003C endl;\n    }\n    else\n    {\n        cout \u003C\u003C \"a和b不相等\" \u003C\u003C endl;\n    }\n\n    if (a != b)\n    {\n        cout \u003C\u003C \"a和b不相等\" \u003C\u003C endl;\n    }\n    else\n    {\n        cout \u003C\u003C \"a和b相等\" \u003C\u003C endl;\n    }\n}\n\nint main() {\n\n    test01();\n\n\n    return 0;\n}\n",[59,3149,3150,3156,3160,3164,3184,3188,3200,3212,3217,3221,3241,3245,3273,3277,3287,3291,3296,3300,3309,3313,3317,3321,3339,3343,3367,3371,3379,3383,3387,3391,3399,3403,3407,3411,3416,3422,3426,3430,3438,3442,3447,3452,3456,3474,3491,3495,3508,3512,3526,3530,3535,3539,3552,3556,3560,3570,3574,3586,3590,3594,3598,3610,3614,3618,3622,3630,3634,3640,3644,3648,3656],{"__ignoreMap":57},[62,3151,3152,3154],{"class":64,"line":65},[62,3153,69],{"class":68},[62,3155,2603],{"class":72},[62,3157,3158],{"class":64,"line":76},[62,3159,80],{"class":79},[62,3161,3162],{"class":64,"line":83},[62,3163,128],{"class":68},[62,3165,3166,3168,3170,3173,3176,3178,3180,3182],{"class":64,"line":90},[62,3167,1265],{"class":72},[62,3169,102],{"class":79},[62,3171,3172],{"class":72},"string",[62,3174,3175],{"class":111}," name",[62,3177,1282],{"class":79},[62,3179,366],{"class":68},[62,3181,2626],{"class":111},[62,3183,258],{"class":79},[62,3185,3186],{"class":64,"line":118},[62,3187,148],{"class":79},[62,3189,3190,3192,3195,3197],{"class":64,"line":125},[62,3191,155],{"class":154},[62,3193,3194],{"class":79},"->m_Name ",[62,3196,161],{"class":68},[62,3198,3199],{"class":79}," name;\n",[62,3201,3202,3204,3207,3209],{"class":64,"line":131},[62,3203,155],{"class":154},[62,3205,3206],{"class":79},"->m_Age ",[62,3208,161],{"class":68},[62,3210,3211],{"class":79}," age;\n",[62,3213,3214],{"class":64,"line":136},[62,3215,3216],{"class":79},"    };\n",[62,3218,3219],{"class":64,"line":145},[62,3220,122],{"emptyLinePlaceholder":121},[62,3222,3223,3226,3228,3231,3233,3235,3237,3239],{"class":64,"line":151},[62,3224,3225],{"class":68},"    bool",[62,3227,1333],{"class":68},[62,3229,3230],{"class":72},"==",[62,3232,102],{"class":79},[62,3234,1481],{"class":72},[62,3236,2682],{"class":68},[62,3238,1348],{"class":111},[62,3240,258],{"class":79},[62,3242,3243],{"class":64,"line":171},[62,3244,148],{"class":79},[62,3246,3247,3249,3252,3254,3256,3258,3261,3264,3266,3268,3270],{"class":64,"line":186},[62,3248,2695],{"class":68},[62,3250,3251],{"class":79}," (",[62,3253,2258],{"class":154},[62,3255,3194],{"class":79},[62,3257,3230],{"class":68},[62,3259,3260],{"class":79}," p.m_Name ",[62,3262,3263],{"class":68},"&&",[62,3265,1366],{"class":154},[62,3267,3206],{"class":79},[62,3269,3230],{"class":68},[62,3271,3272],{"class":79}," p.m_Age)\n",[62,3274,3275],{"class":64,"line":192},[62,3276,2711],{"class":79},[62,3278,3279,3282,3285],{"class":64,"line":197},[62,3280,3281],{"class":68},"            return",[62,3283,3284],{"class":154}," true",[62,3286,168],{"class":79},[62,3288,3289],{"class":64,"line":202},[62,3290,2735],{"class":79},[62,3292,3293],{"class":64,"line":211},[62,3294,3295],{"class":68},"        else\n",[62,3297,3298],{"class":64,"line":216},[62,3299,2711],{"class":79},[62,3301,3302,3304,3307],{"class":64,"line":222},[62,3303,3281],{"class":68},[62,3305,3306],{"class":154}," false",[62,3308,168],{"class":79},[62,3310,3311],{"class":64,"line":231},[62,3312,2735],{"class":79},[62,3314,3315],{"class":64,"line":237},[62,3316,189],{"class":79},[62,3318,3319],{"class":64,"line":242},[62,3320,122],{"emptyLinePlaceholder":121},[62,3322,3323,3325,3327,3329,3331,3333,3335,3337],{"class":64,"line":261},[62,3324,3225],{"class":68},[62,3326,1333],{"class":68},[62,3328,2701],{"class":72},[62,3330,102],{"class":79},[62,3332,1481],{"class":72},[62,3334,2682],{"class":68},[62,3336,1348],{"class":111},[62,3338,258],{"class":79},[62,3340,3341],{"class":64,"line":266},[62,3342,148],{"class":79},[62,3344,3345,3347,3349,3351,3353,3355,3357,3359,3361,3363,3365],{"class":64,"line":289},[62,3346,2695],{"class":68},[62,3348,3251],{"class":79},[62,3350,2258],{"class":154},[62,3352,3194],{"class":79},[62,3354,3230],{"class":68},[62,3356,3260],{"class":79},[62,3358,3263],{"class":68},[62,3360,1366],{"class":154},[62,3362,3206],{"class":79},[62,3364,3230],{"class":68},[62,3366,3272],{"class":79},[62,3368,3369],{"class":64,"line":307},[62,3370,2711],{"class":79},[62,3372,3373,3375,3377],{"class":64,"line":313},[62,3374,3281],{"class":68},[62,3376,3306],{"class":154},[62,3378,168],{"class":79},[62,3380,3381],{"class":64,"line":318},[62,3382,2735],{"class":79},[62,3384,3385],{"class":64,"line":328},[62,3386,3295],{"class":68},[62,3388,3389],{"class":64,"line":333},[62,3390,2711],{"class":79},[62,3392,3393,3395,3397],{"class":64,"line":339},[62,3394,3281],{"class":68},[62,3396,3284],{"class":154},[62,3398,168],{"class":79},[62,3400,3401],{"class":64,"line":353},[62,3402,2735],{"class":79},[62,3404,3405],{"class":64,"line":358},[62,3406,189],{"class":79},[62,3408,3409],{"class":64,"line":363},[62,3410,122],{"emptyLinePlaceholder":121},[62,3412,3413],{"class":64,"line":375},[62,3414,3415],{"class":79},"    string m_Name;\n",[62,3417,3418,3420],{"class":64,"line":380},[62,3419,1414],{"class":68},[62,3421,2719],{"class":79},[62,3423,3424],{"class":64,"line":389},[62,3425,234],{"class":79},[62,3427,3428],{"class":64,"line":394},[62,3429,122],{"emptyLinePlaceholder":121},[62,3431,3432,3434,3436],{"class":64,"line":405},[62,3433,245],{"class":68},[62,3435,323],{"class":72},[62,3437,142],{"class":79},[62,3439,3440],{"class":64,"line":665},[62,3441,80],{"class":79},[62,3443,3444],{"class":64,"line":670},[62,3445,3446],{"class":86},"    //int a = 0;\n",[62,3448,3449],{"class":64,"line":688},[62,3450,3451],{"class":86},"    //int b = 0;\n",[62,3453,3454],{"class":64,"line":705},[62,3455,122],{"emptyLinePlaceholder":121},[62,3457,3458,3460,3463,3465,3468,3470,3472],{"class":64,"line":710},[62,3459,1577],{"class":79},[62,3461,3462],{"class":72},"a",[62,3464,102],{"class":79},[62,3466,3467],{"class":164},"\"孙悟空\"",[62,3469,1282],{"class":79},[62,3471,2902],{"class":154},[62,3473,115],{"class":79},[62,3475,3476,3478,3481,3483,3485,3487,3489],{"class":64,"line":715},[62,3477,1577],{"class":79},[62,3479,3480],{"class":72},"b",[62,3482,102],{"class":79},[62,3484,3467],{"class":164},[62,3486,1282],{"class":79},[62,3488,2902],{"class":154},[62,3490,115],{"class":79},[62,3492,3493],{"class":64,"line":724},[62,3494,122],{"emptyLinePlaceholder":121},[62,3496,3497,3500,3503,3505],{"class":64,"line":729},[62,3498,3499],{"class":68},"    if",[62,3501,3502],{"class":79}," (a ",[62,3504,3230],{"class":68},[62,3506,3507],{"class":79}," b)\n",[62,3509,3510],{"class":64,"line":735},[62,3511,148],{"class":79},[62,3513,3514,3517,3519,3522,3524],{"class":64,"line":745},[62,3515,3516],{"class":79},"        cout ",[62,3518,272],{"class":68},[62,3520,3521],{"class":164}," \"a和b相等\"",[62,3523,278],{"class":68},[62,3525,286],{"class":79},[62,3527,3528],{"class":64,"line":750},[62,3529,189],{"class":79},[62,3531,3532],{"class":64,"line":755},[62,3533,3534],{"class":68},"    else\n",[62,3536,3537],{"class":64,"line":760},[62,3538,148],{"class":79},[62,3540,3541,3543,3545,3548,3550],{"class":64,"line":769},[62,3542,3516],{"class":79},[62,3544,272],{"class":68},[62,3546,3547],{"class":164}," \"a和b不相等\"",[62,3549,278],{"class":68},[62,3551,286],{"class":79},[62,3553,3554],{"class":64,"line":774},[62,3555,189],{"class":79},[62,3557,3558],{"class":64,"line":781},[62,3559,122],{"emptyLinePlaceholder":121},[62,3561,3562,3564,3566,3568],{"class":64,"line":786},[62,3563,3499],{"class":68},[62,3565,3502],{"class":79},[62,3567,2701],{"class":68},[62,3569,3507],{"class":79},[62,3571,3572],{"class":64,"line":795},[62,3573,148],{"class":79},[62,3575,3576,3578,3580,3582,3584],{"class":64,"line":1177},[62,3577,3516],{"class":79},[62,3579,272],{"class":68},[62,3581,3547],{"class":164},[62,3583,278],{"class":68},[62,3585,286],{"class":79},[62,3587,3588],{"class":64,"line":1182},[62,3589,189],{"class":79},[62,3591,3592],{"class":64,"line":1187},[62,3593,3534],{"class":68},[62,3595,3596],{"class":64,"line":1196},[62,3597,148],{"class":79},[62,3599,3600,3602,3604,3606,3608],{"class":64,"line":1202},[62,3601,3516],{"class":79},[62,3603,272],{"class":68},[62,3605,3521],{"class":164},[62,3607,278],{"class":68},[62,3609,286],{"class":79},[62,3611,3612],{"class":64,"line":1209},[62,3613,189],{"class":79},[62,3615,3616],{"class":64,"line":1214},[62,3617,310],{"class":79},[62,3619,3620],{"class":64,"line":1223},[62,3621,122],{"emptyLinePlaceholder":121},[62,3623,3624,3626,3628],{"class":64,"line":3068},[62,3625,366],{"class":68},[62,3627,369],{"class":72},[62,3629,1568],{"class":79},[62,3631,3632],{"class":64,"line":3074},[62,3633,122],{"emptyLinePlaceholder":121},[62,3635,3636,3638],{"class":64,"line":3080},[62,3637,383],{"class":72},[62,3639,386],{"class":79},[62,3641,3642],{"class":64,"line":3085},[62,3643,122],{"emptyLinePlaceholder":121},[62,3645,3646],{"class":64,"line":3091},[62,3647,122],{"emptyLinePlaceholder":121},[62,3649,3650,3652,3654],{"class":64,"line":3097},[62,3651,397],{"class":68},[62,3653,400],{"class":154},[62,3655,168],{"class":79},[62,3657,3658],{"class":64,"line":3103},[62,3659,310],{"class":79},[14,3661,3662,414],{},[411,3663,413],{},[49,3665,3666],{"id":3666},"函数调用运算符重载",[36,3668,3669,3672,3675],{},[39,3670,3671],{},"函数调用运算符 ()  也可以重载",[39,3673,3674],{},"由于重载后使用的方式非常像函数的调用，因此称为仿函数",[39,3676,3677],{},"仿函数没有固定写法，非常灵活",[14,3679,3680],{},[411,3681,2591],{},[52,3683,3685],{"className":54,"code":3684,"language":56,"meta":57,"style":57},"class MyPrint\n{\npublic:\n    void operator()(string text)\n    {\n        cout \u003C\u003C text \u003C\u003C endl;\n    }\n\n};\nvoid test01()\n{\n    //重载的（）操作符 也称为仿函数\n    MyPrint myFunc;\n    myFunc(\"hello world\");\n}\n\nclass MyAdd\n{\npublic:\n    int operator()(int v1, int v2)\n    {\n        return v1 + v2;\n    }\n};\n\nvoid test02()\n{\n    MyAdd add;\n    int ret = add(10, 10);\n    cout \u003C\u003C \"ret = \" \u003C\u003C ret \u003C\u003C endl;\n\n    //匿名对象调用  \n    cout \u003C\u003C \"MyAdd()(100,100) = \" \u003C\u003C MyAdd()(100, 100) \u003C\u003C endl;\n}\n\nint main() {\n\n    test01();\n    test02();\n\n\n    return 0;\n}\n",[59,3686,3687,3694,3698,3702,3720,3724,3737,3741,3745,3749,3757,3761,3766,3771,3783,3787,3791,3798,3802,3806,3830,3834,3846,3850,3854,3858,3866,3870,3875,3897,3914,3918,3923,3954,3958,3962,3970,3974,3980,3987,3991,3995,4003],{"__ignoreMap":57},[62,3688,3689,3691],{"class":64,"line":65},[62,3690,69],{"class":68},[62,3692,3693],{"class":72}," MyPrint\n",[62,3695,3696],{"class":64,"line":76},[62,3697,80],{"class":79},[62,3699,3700],{"class":64,"line":83},[62,3701,128],{"class":68},[62,3703,3704,3706,3708,3711,3713,3715,3718],{"class":64,"line":90},[62,3705,460],{"class":68},[62,3707,1333],{"class":68},[62,3709,3710],{"class":72},"()",[62,3712,102],{"class":79},[62,3714,3172],{"class":72},[62,3716,3717],{"class":111}," text",[62,3719,258],{"class":79},[62,3721,3722],{"class":64,"line":118},[62,3723,148],{"class":79},[62,3725,3726,3728,3730,3733,3735],{"class":64,"line":125},[62,3727,3516],{"class":79},[62,3729,272],{"class":68},[62,3731,3732],{"class":79}," text ",[62,3734,272],{"class":68},[62,3736,286],{"class":79},[62,3738,3739],{"class":64,"line":131},[62,3740,189],{"class":79},[62,3742,3743],{"class":64,"line":136},[62,3744,122],{"emptyLinePlaceholder":121},[62,3746,3747],{"class":64,"line":145},[62,3748,234],{"class":79},[62,3750,3751,3753,3755],{"class":64,"line":151},[62,3752,245],{"class":68},[62,3754,323],{"class":72},[62,3756,142],{"class":79},[62,3758,3759],{"class":64,"line":171},[62,3760,80],{"class":79},[62,3762,3763],{"class":64,"line":186},[62,3764,3765],{"class":86},"    //重载的（）操作符 也称为仿函数\n",[62,3767,3768],{"class":64,"line":192},[62,3769,3770],{"class":79},"    MyPrint myFunc;\n",[62,3772,3773,3776,3778,3781],{"class":64,"line":197},[62,3774,3775],{"class":72},"    myFunc",[62,3777,102],{"class":79},[62,3779,3780],{"class":164},"\"hello world\"",[62,3782,115],{"class":79},[62,3784,3785],{"class":64,"line":202},[62,3786,310],{"class":79},[62,3788,3789],{"class":64,"line":211},[62,3790,122],{"emptyLinePlaceholder":121},[62,3792,3793,3795],{"class":64,"line":216},[62,3794,69],{"class":68},[62,3796,3797],{"class":72}," MyAdd\n",[62,3799,3800],{"class":64,"line":222},[62,3801,80],{"class":79},[62,3803,3804],{"class":64,"line":231},[62,3805,128],{"class":68},[62,3807,3808,3810,3812,3814,3816,3818,3821,3823,3825,3828],{"class":64,"line":237},[62,3809,1414],{"class":68},[62,3811,1333],{"class":68},[62,3813,3710],{"class":72},[62,3815,102],{"class":79},[62,3817,366],{"class":68},[62,3819,3820],{"class":111}," v1",[62,3822,1282],{"class":79},[62,3824,366],{"class":68},[62,3826,3827],{"class":111}," v2",[62,3829,258],{"class":79},[62,3831,3832],{"class":64,"line":242},[62,3833,148],{"class":79},[62,3835,3836,3838,3841,3843],{"class":64,"line":261},[62,3837,1394],{"class":68},[62,3839,3840],{"class":79}," v1 ",[62,3842,1336],{"class":68},[62,3844,3845],{"class":79}," v2;\n",[62,3847,3848],{"class":64,"line":266},[62,3849,189],{"class":79},[62,3851,3852],{"class":64,"line":289},[62,3853,234],{"class":79},[62,3855,3856],{"class":64,"line":307},[62,3857,122],{"emptyLinePlaceholder":121},[62,3859,3860,3862,3864],{"class":64,"line":313},[62,3861,245],{"class":68},[62,3863,2465],{"class":72},[62,3865,142],{"class":79},[62,3867,3868],{"class":64,"line":318},[62,3869,80],{"class":79},[62,3871,3872],{"class":64,"line":328},[62,3873,3874],{"class":79},"    MyAdd add;\n",[62,3876,3877,3879,3882,3884,3887,3889,3891,3893,3895],{"class":64,"line":333},[62,3878,1414],{"class":68},[62,3880,3881],{"class":79}," ret ",[62,3883,161],{"class":68},[62,3885,3886],{"class":72}," add",[62,3888,102],{"class":79},[62,3890,1585],{"class":154},[62,3892,1282],{"class":79},[62,3894,1585],{"class":154},[62,3896,115],{"class":79},[62,3898,3899,3901,3903,3906,3908,3910,3912],{"class":64,"line":339},[62,3900,269],{"class":79},[62,3902,272],{"class":68},[62,3904,3905],{"class":164}," \"ret = \"",[62,3907,278],{"class":68},[62,3909,3881],{"class":79},[62,3911,272],{"class":68},[62,3913,286],{"class":79},[62,3915,3916],{"class":64,"line":353},[62,3917,122],{"emptyLinePlaceholder":121},[62,3919,3920],{"class":64,"line":358},[62,3921,3922],{"class":86},"    //匿名对象调用  \n",[62,3924,3925,3927,3929,3932,3934,3937,3940,3943,3945,3947,3950,3952],{"class":64,"line":363},[62,3926,269],{"class":79},[62,3928,272],{"class":68},[62,3930,3931],{"class":164}," \"MyAdd()(100,100) = \"",[62,3933,278],{"class":68},[62,3935,3936],{"class":72}," MyAdd",[62,3938,3939],{"class":79},"()(",[62,3941,3942],{"class":154},"100",[62,3944,1282],{"class":79},[62,3946,3942],{"class":154},[62,3948,3949],{"class":79},") ",[62,3951,272],{"class":68},[62,3953,286],{"class":79},[62,3955,3956],{"class":64,"line":375},[62,3957,310],{"class":79},[62,3959,3960],{"class":64,"line":380},[62,3961,122],{"emptyLinePlaceholder":121},[62,3963,3964,3966,3968],{"class":64,"line":389},[62,3965,366],{"class":68},[62,3967,369],{"class":72},[62,3969,1568],{"class":79},[62,3971,3972],{"class":64,"line":394},[62,3973,122],{"emptyLinePlaceholder":121},[62,3975,3976,3978],{"class":64,"line":405},[62,3977,383],{"class":72},[62,3979,386],{"class":79},[62,3981,3982,3985],{"class":64,"line":665},[62,3983,3984],{"class":72},"    test02",[62,3986,386],{"class":79},[62,3988,3989],{"class":64,"line":670},[62,3990,122],{"emptyLinePlaceholder":121},[62,3992,3993],{"class":64,"line":688},[62,3994,122],{"emptyLinePlaceholder":121},[62,3996,3997,3999,4001],{"class":64,"line":705},[62,3998,397],{"class":68},[62,4000,400],{"class":154},[62,4002,168],{"class":79},[62,4004,4005],{"class":64,"line":710},[62,4006,310],{"class":79},[14,4008,4009,4011],{},[411,4010,413],{}," 运行后会按输出语句打印对应内容，变量值可结合初始化、赋值和函数调用顺序推导。",[4013,4014,4015],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":57,"searchDepth":76,"depth":76,"links":4017},[4018,4019],{"id":12,"depth":83,"text":12},{"id":1232,"depth":83,"text":1232},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai","13.4",13040000,"2023-10-05","wiki/2023-10-05-cplusplus-jiao-xue","zh-cn:2023-10-05-cplusplus-jiao-xue","/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue","Cplusplus教学","md","wiki/2023-10-05-Cplusplus教学/ch13-4-友元与运算符重载",false,null,"/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai","zh-CN","zh-cn",{},{"title":5,"description":57},"_bEDwcUbtQLeqcoSFrrUIRXbbzE4p5d73EAjFD1zXKg",[4039,4045,4050,4056,4062,4068,4074,4080,4081,4087,4093,4099,4105,4111,4117,4123,4129,4135,4141,4147,4153,4159,4165,4171,4177,4183,4189,4195,4201,4207,4213,4219,4225,4231,4237,4243,4249,4255,4261,4267,4273,4279,4285,4291,4297,4303,4309,4315,4321,4326,4332,4338,4344,4350,4356,4362,4368,4374,4380,4386,4392,4398,4404,4410,4416,4422,4428,4434,4440,4446],{"path":4040,"stem":4041,"title":4042,"date":4023,"chapter":4043,"chapterSort":4044,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch1-c-ji-chu-chu-shi","wiki/2023-10-05-Cplusplus教学/ch1-C++基础初识","C++基础初识","1",1000000,{"path":4046,"stem":4047,"title":4048,"date":4023,"chapter":1585,"chapterSort":4049,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch10-nei-cun-fen-qu-yu-sheng-ming-zhou-qi","wiki/2023-10-05-Cplusplus教学/ch10-内存分区与生命周期","内存分区与生命周期",10000000,{"path":4051,"stem":4052,"title":4053,"date":4023,"chapter":4054,"chapterSort":4055,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch11-yin-yong","wiki/2023-10-05-Cplusplus教学/ch11-引用","引用","11",11000000,{"path":4057,"stem":4058,"title":4059,"date":4023,"chapter":4060,"chapterSort":4061,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch12-han-shu-ti-gao-yu-ming-ming-kong-jian","wiki/2023-10-05-Cplusplus教学/ch12-函数提高与命名空间","函数提高与命名空间","12",12000000,{"path":4063,"stem":4064,"title":4065,"date":4023,"chapter":4066,"chapterSort":4067,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-1-feng-zhuang","wiki/2023-10-05-Cplusplus教学/ch13-1-封装","封装","13.1",13010000,{"path":4069,"stem":4070,"title":4071,"date":4023,"chapter":4072,"chapterSort":4073,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-2-dui-xiang-chu-shi-hua-he-qing-li","wiki/2023-10-05-Cplusplus教学/ch13-2-对象初始化和清理","对象初始化和清理","13.2",13020000,{"path":4075,"stem":4076,"title":4077,"date":4023,"chapter":4078,"chapterSort":4079,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-3-dui-xiang-mo-xing-yu-this-zhi-zhen","wiki/2023-10-05-Cplusplus教学/ch13-3-对象模型与this指针","对象模型与this指针","13.3",13030000,{"path":4020,"stem":4029,"title":5,"date":4023,"chapter":4021,"chapterSort":4022,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},{"path":4082,"stem":4083,"title":4084,"date":4023,"chapter":4085,"chapterSort":4086,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-5-ji-cheng","wiki/2023-10-05-Cplusplus教学/ch13-5-继承","继承","13.5",13050000,{"path":4088,"stem":4089,"title":4090,"date":4023,"chapter":4091,"chapterSort":4092,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-6-duo-tai","wiki/2023-10-05-Cplusplus教学/ch13-6-多态","多态","13.6",13060000,{"path":4094,"stem":4095,"title":4096,"date":4023,"chapter":4097,"chapterSort":4098,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch13-lei-he-dui-xiang","wiki/2023-10-05-Cplusplus教学/ch13-类和对象","类和对象","13",13000000,{"path":4100,"stem":4101,"title":4102,"date":4023,"chapter":4103,"chapterSort":4104,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch14-wen-jian-cao-zuo","wiki/2023-10-05-Cplusplus教学/ch14-文件操作","文件操作","14",14000000,{"path":4106,"stem":4107,"title":4108,"date":4023,"chapter":4109,"chapterSort":4110,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch15-mu-ban","wiki/2023-10-05-Cplusplus教学/ch15-模板","模板","15",15000000,{"path":4112,"stem":4113,"title":4114,"date":4023,"chapter":4115,"chapterSort":4116,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-1-stl-chu-shi","wiki/2023-10-05-Cplusplus教学/ch16-1-STL初识","STL初识","16.1",16010000,{"path":4118,"stem":4119,"title":4120,"date":4023,"chapter":4121,"chapterSort":4122,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-2-std-array","wiki/2023-10-05-Cplusplus教学/ch16-2-std-array","std::array","16.2",16020000,{"path":4124,"stem":4125,"title":4126,"date":4023,"chapter":4127,"chapterSort":4128,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-3-string-rong-qi","wiki/2023-10-05-Cplusplus教学/ch16-3-string容器","string容器","16.3",16030000,{"path":4130,"stem":4131,"title":4132,"date":4023,"chapter":4133,"chapterSort":4134,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-4-vector-yu-deque-rong-qi","wiki/2023-10-05-Cplusplus教学/ch16-4-vector与deque容器","vector与deque容器","16.4",16040000,{"path":4136,"stem":4137,"title":4138,"date":4023,"chapter":4139,"chapterSort":4140,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-5-stack-queue-list-rong-qi","wiki/2023-10-05-Cplusplus教学/ch16-5-stack-queue-list容器","stack / queue / list 容器","16.5",16050000,{"path":4142,"stem":4143,"title":4144,"date":4023,"chapter":4145,"chapterSort":4146,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-6-set-map-rong-qi","wiki/2023-10-05-Cplusplus教学/ch16-6-set-map容器","set / map 容器","16.6",16060000,{"path":4148,"stem":4149,"title":4150,"date":4023,"chapter":4151,"chapterSort":4152,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-7-han-shu-dui-xiang-yu-wei-ci","wiki/2023-10-05-Cplusplus教学/ch16-7-函数对象与谓词","函数对象与谓词","16.7",16070000,{"path":4154,"stem":4155,"title":4156,"date":4023,"chapter":4157,"chapterSort":4158,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-8-chang-yong-suan-fa","wiki/2023-10-05-Cplusplus教学/ch16-8-常用算法","常用算法","16.8",16080000,{"path":4160,"stem":4161,"title":4162,"date":4023,"chapter":4163,"chapterSort":4164,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch16-stl-ti-gao-bian-cheng","wiki/2023-10-05-Cplusplus教学/ch16-STL提高编程","STL提高编程","16",16000000,{"path":4166,"stem":4167,"title":4168,"date":4023,"chapter":4169,"chapterSort":4170,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch17-c-lei-xing-zhuan-huan","wiki/2023-10-05-Cplusplus教学/ch17-C++类型转换","C++类型转换","17",17000000,{"path":4172,"stem":4173,"title":4174,"date":4023,"chapter":4175,"chapterSort":4176,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-1-auto","wiki/2023-10-05-Cplusplus教学/ch18-1-auto","auto","18.1",18010000,{"path":4178,"stem":4179,"title":4180,"date":4023,"chapter":4181,"chapterSort":4182,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-10-you-zhi-yin-yong-he-yi-dong-yu-yi","wiki/2023-10-05-Cplusplus教学/ch18-10-右值引用和移动语义","右值引用和移动语义","18.10",18100000,{"path":4184,"stem":4185,"title":4186,"date":4023,"chapter":4187,"chapterSort":4188,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-11-lambda-biao-da-shi","wiki/2023-10-05-Cplusplus教学/ch18-11-Lambda表达式","Lambda 表达式","18.11",18110000,{"path":4190,"stem":4191,"title":4192,"date":4023,"chapter":4193,"chapterSort":4194,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-12-std-function","wiki/2023-10-05-Cplusplus教学/ch18-12-std-function","std::function","18.12",18120000,{"path":4196,"stem":4197,"title":4198,"date":4023,"chapter":4199,"chapterSort":4200,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-13-std-bind","wiki/2023-10-05-Cplusplus教学/ch18-13-std-bind","std::bind","18.13",18130000,{"path":4202,"stem":4203,"title":4204,"date":4023,"chapter":4205,"chapterSort":4206,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-14-std-optional","wiki/2023-10-05-Cplusplus教学/ch18-14-std-optional","std::optional","18.14",18140000,{"path":4208,"stem":4209,"title":4210,"date":4023,"chapter":4211,"chapterSort":4212,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-15-std-variant","wiki/2023-10-05-Cplusplus教学/ch18-15-std-variant","std::variant","18.15",18150000,{"path":4214,"stem":4215,"title":4216,"date":4023,"chapter":4217,"chapterSort":4218,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-16-std-span","wiki/2023-10-05-Cplusplus教学/ch18-16-std-span","std::span","18.16",18160000,{"path":4220,"stem":4221,"title":4222,"date":4023,"chapter":4223,"chapterSort":4224,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-17-std-format-print","wiki/2023-10-05-Cplusplus教学/ch18-17-std-format-print","std::format / std::print","18.17",18170000,{"path":4226,"stem":4227,"title":4228,"date":4023,"chapter":4229,"chapterSort":4230,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-18-std-chrono","wiki/2023-10-05-Cplusplus教学/ch18-18-std-chrono","std::chrono","18.18",18180000,{"path":4232,"stem":4233,"title":4234,"date":4023,"chapter":4235,"chapterSort":4236,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-1-std-thread","wiki/2023-10-05-Cplusplus教学/ch18-19-1-std-thread","std::thread 与 join","18.19.1",18190100,{"path":4238,"stem":4239,"title":4240,"date":4023,"chapter":4241,"chapterSort":4242,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-2-mutex-lock-guard","wiki/2023-10-05-Cplusplus教学/ch18-19-2-mutex-lock-guard","mutex 与 lock_guard","18.19.2",18190200,{"path":4244,"stem":4245,"title":4246,"date":4023,"chapter":4247,"chapterSort":4248,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-3-std-atomic","wiki/2023-10-05-Cplusplus教学/ch18-19-3-std-atomic","std::atomic","18.19.3",18190300,{"path":4250,"stem":4251,"title":4252,"date":4023,"chapter":4253,"chapterSort":4254,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-4-condition-variable","wiki/2023-10-05-Cplusplus教学/ch18-19-4-condition-variable","condition_variable","18.19.4",18190400,{"path":4256,"stem":4257,"title":4258,"date":4023,"chapter":4259,"chapterSort":4260,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-19-bing-fa-bian-cheng","wiki/2023-10-05-Cplusplus教学/ch18-19-并发编程","并发编程","18.19",18190000,{"path":4262,"stem":4263,"title":4264,"date":4023,"chapter":4265,"chapterSort":4266,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-2-nullptr","wiki/2023-10-05-Cplusplus教学/ch18-2-nullptr","nullptr","18.2",18020000,{"path":4268,"stem":4269,"title":4270,"date":4023,"chapter":4271,"chapterSort":4272,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-20-std-filesystem","wiki/2023-10-05-Cplusplus教学/ch18-20-std-filesystem","std::filesystem","18.20",18200000,{"path":4274,"stem":4275,"title":4276,"date":4023,"chapter":4277,"chapterSort":4278,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-21-modules-jian-jie","wiki/2023-10-05-Cplusplus教学/ch18-21-modules简介","modules 简介","18.21",18210000,{"path":4280,"stem":4281,"title":4282,"date":4023,"chapter":4283,"chapterSort":4284,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-3-using","wiki/2023-10-05-Cplusplus教学/ch18-3-using","using","18.3",18030000,{"path":4286,"stem":4287,"title":4288,"date":4023,"chapter":4289,"chapterSort":4290,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-4-enum-class","wiki/2023-10-05-Cplusplus教学/ch18-4-enum-class","enum class","18.4",18040000,{"path":4292,"stem":4293,"title":4294,"date":4023,"chapter":4295,"chapterSort":4296,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-5-fan-wei-for-xun-huan","wiki/2023-10-05-Cplusplus教学/ch18-5-范围for循环","范围 for 循环","18.5",18050000,{"path":4298,"stem":4299,"title":4300,"date":4023,"chapter":4301,"chapterSort":4302,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-6-jie-gou-hua-bang-ding","wiki/2023-10-05-Cplusplus教学/ch18-6-结构化绑定","结构化绑定","18.6",18060000,{"path":4304,"stem":4305,"title":4306,"date":4023,"chapter":4307,"chapterSort":4308,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-7-constexpr","wiki/2023-10-05-Cplusplus教学/ch18-7-constexpr","constexpr","18.7",18070000,{"path":4310,"stem":4311,"title":4312,"date":4023,"chapter":4313,"chapterSort":4314,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-8-raii","wiki/2023-10-05-Cplusplus教学/ch18-8-RAII","RAII","18.8",18080000,{"path":4316,"stem":4317,"title":4318,"date":4023,"chapter":4319,"chapterSort":4320,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-9-zhi-neng-zhi-zhen","wiki/2023-10-05-Cplusplus教学/ch18-9-智能指针","智能指针","18.9",18090000,{"path":4322,"stem":4323,"title":4324,"date":4023,"chapter":2902,"chapterSort":4325,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch18-xian-dai-c","wiki/2023-10-05-Cplusplus教学/ch18-现代C++","现代C++",18000000,{"path":4327,"stem":4328,"title":4329,"date":4023,"chapter":4330,"chapterSort":4331,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-1-ding-shi-qi-yu-yi-bu-io","wiki/2023-10-05-Cplusplus教学/ch19-1-1-定时器与异步IO","定时器与异步 IO","19.1.1",19010100,{"path":4333,"stem":4334,"title":4335,"date":4023,"chapter":4336,"chapterSort":4337,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-2-boost-asio-ji-chu","wiki/2023-10-05-Cplusplus教学/ch19-1-2-Boost.Asio基础","Boost.Asio 基础","19.1.2",19010200,{"path":4339,"stem":4340,"title":4341,"date":4023,"chapter":4342,"chapterSort":4343,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-3-chuan-kou-tong-xin","wiki/2023-10-05-Cplusplus教学/ch19-1-3-串口通信","串口通信","19.1.3",19010300,{"path":4345,"stem":4346,"title":4347,"date":4023,"chapter":4348,"chapterSort":4349,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-4-tcp-tong-xin","wiki/2023-10-05-Cplusplus教学/ch19-1-4-TCP通信","TCP 通信","19.1.4",19010400,{"path":4351,"stem":4352,"title":4353,"date":4023,"chapter":4354,"chapterSort":4355,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-5-udp-tong-xin","wiki/2023-10-05-Cplusplus教学/ch19-1-5-UDP通信","UDP 通信","19.1.5",19010500,{"path":4357,"stem":4358,"title":4359,"date":4023,"chapter":4360,"chapterSort":4361,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-6-ji-qi-ren-gong-cheng-xie-fa-yu-ros2-ji-cheng","wiki/2023-10-05-Cplusplus教学/ch19-1-6-机器人工程写法与ROS2集成","机器人工程写法与 ROS2 集成","19.1.6",19010600,{"path":4363,"stem":4364,"title":4365,"date":4023,"chapter":4366,"chapterSort":4367,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-1-boost-asio-yi-bu-io-ku","wiki/2023-10-05-Cplusplus教学/ch19-1-Boost.Asio异步IO库","Boost.Asio异步IO库","19.1",19010000,{"path":4369,"stem":4370,"title":4371,"date":4023,"chapter":4372,"chapterSort":4373,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-2-eigen-xian-xing-dai-shu-ku","wiki/2023-10-05-Cplusplus教学/ch19-2-Eigen线性代数库","Eigen线性代数库","19.2",19020000,{"path":4375,"stem":4376,"title":4377,"date":4023,"chapter":4378,"chapterSort":4379,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-3-opencv-ji-suan-ji-shi-jue-ku","wiki/2023-10-05-Cplusplus教学/ch19-3-OpenCV计算机视觉库","OpenCV计算机视觉库","19.3",19030000,{"path":4381,"stem":4382,"title":4383,"date":4023,"chapter":4384,"chapterSort":4385,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-4-pcl-dian-yun-ku","wiki/2023-10-05-Cplusplus教学/ch19-4-PCL点云库","PCL点云库","19.4",19040000,{"path":4387,"stem":4388,"title":4389,"date":4023,"chapter":4390,"chapterSort":4391,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-5-sophus-li-qun-li-dai-shu-ku","wiki/2023-10-05-Cplusplus教学/ch19-5-Sophus李群李代数库","Sophus 李群李代数库","19.5",19050000,{"path":4393,"stem":4394,"title":4395,"date":4023,"chapter":4396,"chapterSort":4397,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch19-chang-yong-ku","wiki/2023-10-05-Cplusplus教学/ch19-常用库","常用库学习","19",19000000,{"path":4399,"stem":4400,"title":4401,"date":4023,"chapter":4402,"chapterSort":4403,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch2-shu-ju-lei-xing-yu-shu-ju-cun-fang","wiki/2023-10-05-Cplusplus教学/ch2-数据类型与数据存放","数据类型与数据存放","2",2000000,{"path":4405,"stem":4406,"title":4407,"date":4023,"chapter":4408,"chapterSort":4409,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch3-shu-ru-shu-chu","wiki/2023-10-05-Cplusplus教学/ch3-输入输出","输入输出","3",3000000,{"path":4411,"stem":4412,"title":4413,"date":4023,"chapter":4414,"chapterSort":4415,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch4-yun-suan-fu","wiki/2023-10-05-Cplusplus教学/ch4-运算符","运算符","4",4000000,{"path":4417,"stem":4418,"title":4419,"date":4023,"chapter":4420,"chapterSort":4421,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch5-cheng-xu-liu-cheng-jie-gou","wiki/2023-10-05-Cplusplus教学/ch5-程序流程结构","程序流程结构","5",5000000,{"path":4423,"stem":4424,"title":4425,"date":4023,"chapter":4426,"chapterSort":4427,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch6-shu-zu","wiki/2023-10-05-Cplusplus教学/ch6-数组","数组","6",6000000,{"path":4429,"stem":4430,"title":4431,"date":4023,"chapter":4432,"chapterSort":4433,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch7-han-shu-yu-tou-wen-jian","wiki/2023-10-05-Cplusplus教学/ch7-函数与头文件","函数与头文件","7",7000000,{"path":4435,"stem":4436,"title":4437,"date":4023,"chapter":4438,"chapterSort":4439,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch8-zhi-zhen","wiki/2023-10-05-Cplusplus教学/ch8-指针","指针","8",8000000,{"path":4441,"stem":4442,"title":4443,"date":4023,"chapter":4444,"chapterSort":4445,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":4030},"/zh-cn/wiki/2023-10-05-cplusplus-jiao-xue/ch9-jie-gou-ti-yu-gong-yong-ti","wiki/2023-10-05-Cplusplus教学/ch9-结构体与共用体","结构体与共用体","9",9000000,{"path":4026,"stem":4447,"title":4448,"date":4023,"chapter":4031,"chapterSort":4449,"docKey":4025,"docRoot":4026,"docTitle":4027,"isWikiDoc":121,"isWikiIndex":121},"wiki/2023-10-05-Cplusplus教学/index","C/C++教程",0,{"variants":4451},[4452,4455,4458,4461,4464],{"path":4453,"localeSlug":4454,"i18nKey":4029},"/en-us/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai","en-us",{"path":4456,"localeSlug":4457,"i18nKey":4029},"/zh-hant/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai","zh-hant",{"path":4459,"localeSlug":4460,"i18nKey":4029},"/zh-hk/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai","zh-hk",{"path":4462,"localeSlug":4463,"i18nKey":4029},"/zh-tw/wiki/2023-10-05-cplusplus-jiao-xue/ch13-4-you-yuan-yu-yun-suan-fu-zhong-zai","zh-tw",{"path":4020,"localeSlug":4034,"i18nKey":4029},[4453,4032,4456,4032,4459,4032,4462,4032,4020,4032],1780663031189]