锘??xml version="1.0" encoding="utf-8" standalone="yes"?> C++涓殑const鍏抽敭瀛楀拰#define鏈変簺鐩鎬技錛?/span>#define鍙槸鐢ㄦ潵鍋氭枃鏈浛鎹㈢殑錛屼細鍑虹幇涓浜涢敊璇茍涓斾笉瀹規槗媯鏌ュ埌銆傚湪C++浠g爜涓敖閲忎嬌鐢?/span>const鑰屼笉鏄?/span>#define銆?/span> const鐨勪綔鐢細 1銆?nbsp;const鐢ㄤ簬瀹氫箟甯擱噺錛?/span>const瀹氫箟鐨勫父閲忕紪璇戝櫒鍙互瀵瑰叾榪涜鏁版嵁闈欐佺被鍨嬪畨鍏ㄦ鏌ャ?/span> 2銆?nbsp;const淇グ褰㈠弬錛氬綋鍙傛暟鏄敤鎴瘋嚜瀹氫箟綾誨瀷鎴栬呮娊璞℃暟鎹被鍨嬫椂錛岀敤const寮曠敤浼犻掕屼笉鏄間紶閫掑彲浠ユ彁楂樻晥鐜囥?/span> Void fun1(A a); Void fun2(A const &a); 絎簩涓嚱鏁頒笉闇瑕佷駭鐢熶復鏃跺璞★紝鐪佸幓浜嗗璞℃瀯閫犳瀽鏋勬秷鑰楃殑鏃墮棿 3銆?nbsp;const淇グ鍑芥暟榪斿洖鍊鹼細濡傛灉鍑芥暟榪斿洖涓涓?/span>const鎸囬拡錛屽垯鍑芥暟榪斿洖鍊煎彧鑳借const鍚岀被鍨嬫寚閽堟帴鏀訛紝鍚﹀垯error銆?/span> 4銆?nbsp;const淇グ鎴愬憳鍑芥暟錛氬綋浣犵殑鎴愬憳鍑芥暟涓嶉渶瑕佹敼鍙樻暟鎹垚鍛樼殑鍊兼椂錛屽氨鍔犱笂const淇グ銆?/span> 鏈互涓轟富鍑芥暟main鏄鍏堣璋冪敤鐨勫嚱鏁幫紝鍚庢潵鍙戠幇鎿嶄綔緋葷粺浼氳皟鐢ㄤ竴涓惎鍔ㄥ嚱鏁幫紝瀵?/span>C++榪愯搴撹繘琛屽垵濮嬪寲銆?/span> 鏈互涓轟富鍑芥暟main琚繑鍥炰箣鍚庢搷浣滅郴緇熷皢鍥炴敹璧勬簮錛屽嵈涓嶇煡涓涓噸瑕佺殑鍑芥暟—atexit()銆?/span> 紼嬪簭閫鍑虹殑鏃跺欓渶瑕佷竴浜涜濡傞噴鏀捐祫婧愮殑鎿嶄綔錛屼絾鏄▼搴忕殑閫鍑烘湁寰堝縐嶏紝鍙兘鏄?/span>main鍑芥暟緇撴潫鑼冨洿涓涓間紶閫掔粰exit()錛屼篃鍙兘鏄竴浜涘叾浠栫殑鍘熷洜錛屾墍浠ラ渶瑕佷竴縐嶄笌紼嬪簭緇撴潫鏂瑰紡鏃犲叧鐨勬柟娉曟潵榪涜紼嬪簭閫鍑烘椂蹇呰鐨勫鐞嗐?/span> 鍑芥暟鍘熷瀷錛?/span>int atexit(void(*)(void)); 鍑芥暟浣滅敤錛氭敞鍐屼竴涓嚱鏁幫紝榪欎釜鍑芥暟鍦ㄧ▼搴忕粨鏉熺殑鏃跺欒璋冪敤 浠庣粨鏋滀腑鍙互鍙戠幇fun1鍜宖un2涓や釜鍑芥暟鍦ㄤ富鍑芥暟緇撴潫涔嬪悗琚皟鐢紝鑰屼笖璋冪敤鐨勯『搴忎笌娉ㄥ唽鐨勯『搴忕浉鍙嶃?/p>
CCDirector::sharedDirector()->getScheduler()錛?gt;setTimeScale(multi);
濡傛灉闇瑕佹彁鍗囦竴鍊嶇殑閫熷害錛屽彲浠ユ妸multi璁句負2.0f銆?br />
閫氳繃榪欐牱涓涓満鍒跺彲浠ュ疄鐜版父鎴忓唴鎴樻枟鍊嶆暟鍔犻熺殑鍔熻兘銆?img src ="http://www.shnenglu.com/cxiaojia/aggbug/202374.html" width = "1" height = "1" />
]]>
涓轟簡閬垮厤鍚屼竴涓枃浠惰include澶氭錛孋/C++涓湁涓ょ鏂瑰紡錛屼竴縐嶆槸#ifndef鏂瑰紡錛屼竴縐嶆槸#pragma once鏂瑰紡銆傚湪鑳藉鏀寔榪欎袱縐嶆柟寮忕殑緙栬瘧鍣ㄤ笂錛屼簩鑰呭茍娌℃湁澶ぇ鐨勫尯鍒紝浣嗘槸涓よ呬粛鐒惰繕鏄湁涓浜涚粏寰殑鍖哄埆銆?/span>
鏂瑰紡涓錛?/span>
#ifndef __SOMEFILE_H__
#define __SOMEFILE_H__
... ... // 涓浜涘0鏄庤鍙?br style="margin: 0px; padding: 0px;" /> #endif
鏂瑰紡浜岋細
#pragma once
... ... // 涓浜涘0鏄庤鍙?/span>
#ifndef鐨勬柟寮忎緷璧栦簬瀹忓悕瀛椾笉鑳藉啿紿侊紝榪欎笉鍏夊彲浠ヤ繚璇佸悓涓涓枃浠朵笉浼氳鍖呭惈澶氭錛屼篃鑳戒繚璇佸唴瀹瑰畬鍏ㄧ浉鍚岀殑涓や釜鏂囦歡涓嶄細琚笉灝忓績鍚屾椂鍖呭惈銆傚綋鐒訛紝緙虹偣灝辨槸濡傛灉涓嶅悓澶存枃浠剁殑瀹忓悕涓嶅皬蹇?#8220;鎾炶濺”錛屽彲鑳藉氨浼氬鑷村ご鏂囦歡鏄庢槑瀛樺湪錛岀紪璇戝櫒鍗寸‖璇存壘涓嶅埌澹版槑鐨勭姸鍐?#8212;—榪欑鎯呭喌鏈夋椂闈炲父璁╀漢鎶撶媯銆?/span>
#pragma once鍒欑敱緙栬瘧鍣ㄦ彁渚涗繚璇侊細鍚屼竴涓枃浠朵笉浼氳鍖呭惈澶氭銆傛敞鎰忚繖閲屾墍璇寸殑“鍚屼竴涓枃浠?#8221;鏄寚鐗╃悊涓婄殑涓涓枃浠訛紝鑰屼笉鏄寚鍐呭鐩稿悓鐨勪袱涓枃浠躲傚甫鏉ョ殑濂藉鏄紝浣犱笉蹇呭啀璐瑰姴鎯充釜瀹忓悕浜嗭紝褰撶劧涔熷氨涓嶄細鍑虹幇瀹忓悕紕版挒寮曞彂鐨勫鎬棶棰樸傚搴旂殑緙虹偣灝辨槸濡傛灉鏌愪釜澶存枃浠舵湁澶氫喚鎷瘋礉錛屾湰鏂規硶涓嶈兘淇濊瘉浠栦滑涓嶈閲嶅鍖呭惈銆傚綋鐒訛紝鐩告瘮瀹忓悕紕版挒寮曞彂鐨?#8220;鎵句笉鍒板0鏄?#8221;鐨勯棶棰橈紝閲嶅鍖呭惈鏇村鏄撹鍙戠幇騫朵慨姝c?/span>
#pragma once鏂瑰紡浜х敓浜?ifndef涔嬪悗錛屽洜姝ゅ緢澶氫漢鍙兘鐢氳嚦娌℃湁鍚榪囥傜洰鍓嶇湅鏉?ifndef鏇村彈鍒版帹宕囥傚洜涓?ifndef鍙楄璦澶╃敓鐨勬敮鎸侊紝涓嶅彈緙栬瘧鍣ㄧ殑浠諱綍闄愬埗錛涜?pragma once鏂瑰紡鍗翠笉鍙椾竴浜涜緝鑰佺増鏈殑緙栬瘧鍣ㄦ敮鎸侊紝鎹㈣█涔嬶紝瀹冪殑鍏煎鎬т笉澶熷ソ銆備篃璁革紝鍐嶈繃鍑犲勾絳夋棫鐨勭紪璇戝櫒姝葷粷浜嗭紝榪欏氨涓嶆槸浠涔堥棶棰樹簡銆?/span>
鎴戣繕鐪嬪埌涓縐嶇敤娉曟槸鎶婁袱鑰呮斁鍦ㄤ竴璧風殑錛?/span>
#pragma once
#ifndef __SOMEFILE_H__
#define __SOMEFILE_H__
... ... // 涓浜涘0鏄庤鍙?br style="margin: 0px; padding: 0px;" /> #endif
鐪嬭搗鏉ヤ技涔庢槸鎯沖吋鏈変袱鑰呯殑浼樼偣銆備笉榪囧彧瑕佷嬌鐢ㄤ簡#ifndef灝變細鏈夊畯鍚嶅啿紿佺殑鍗遍櫓錛屾墍浠ユ販鐢ㄤ袱縐嶆柟娉曚技涔庝笉鑳藉甫鏉ユ洿澶氱殑濂藉錛屽掓槸浼氳涓浜涗笉鐔熸倝鐨勪漢鎰熷埌鍥版儜銆?/span>
閫夋嫨鍝鏂瑰紡錛屽簲璇ュ湪浜嗚В涓ょ鏂瑰紡鐨勬儏鍐典笅錛岃鍏蜂綋鎯呭喌鑰屽畾銆備簨瀹炰笂錛屽彧瑕佹湁涓涓悎鐞嗙殑綰﹀畾鏉ラ伩寮緙虹偣錛屾垜璁や負鍝鏂瑰紡閮芥槸鍙互鎺ュ彈鐨勩傝岃繖涓凡緇忎笉鏄爣鍑嗘垨鑰呯紪璇戝櫒鐨勮矗浠諱簡錛屽簲褰撶敱紼嬪簭鍛樻潵鎼炲畾銆?/span>
btw錛氭垜鐪嬪埌GNU鐨勪竴浜涜璁轟技涔庢槸鎵撶畻鍦℅CC 3.4錛堝強鍏朵互鍚庯紵錛夌殑鐗堟湰鍙栨秷瀵?pragma once鐨勬敮鎸併備笉榪囨垜鎵嬩笂GCC 3.4.2鍜孏CC 4.1.1浠嶇劧鏀寔#pragma once錛岀敋鑷蟲病鏈塪eprecation warning銆俈C6鍙婂叾浠ュ悗鐗堟湰浜︽彁渚涘#pragma once鏂瑰紡鐨勬敮鎸併傜湅鏉ヨ繖涓鐗規у凡緇忕ǔ瀹氫笅鏉ヤ簡銆?nbsp;
]]>
#include<sstream>
#include<string>
using namespace std;
template<class out_type,class in_value>
out_type convert(const in_value & t)
{
stringstream stream;
stream<<t;//鍚戞祦涓紶鍊?/span>
out_type result;//榪欓噷瀛樺偍杞崲緇撴灉
stream>>result;//鍚憆esult涓啓鍏ュ?/span>
return result;
}
int main()
{
string s;
while(cin>>s)
{
double valdou=convert<double>(s);
int valint=convert<int>(s);
cout<<valdou<<endl;
cout<<valint<<endl;
}
return 0;
}
]]>
//鍔熻兘錛氬唴瀛樺鍒?br />//鍑芥暟璇存槑錛氬皢memFrom鎸囧悜鐨勭┖闂村唴瀹瑰鍒剁粰memTo鎸囧悜鐨勭┖闂村唴瀹癸紝澶у皬涓簊ize
void* mymemcpy(void* memTo,const void* memFrom,size_t size)
{
assert(memTo!=NULL);//鍒ゆ柇鏄惁涓虹┖
assert(memFrom!=NULL);//鍒ゆ柇鏄惁涓虹┖
char *tempFrom=(char*)memFrom;
char *tempTo=(char*)memTo;
while(size--)
*tempTo++=*tempFrom++; //澶嶅埗
return memTo;
}
]]>
#include<iostream>
using namespace std;
class A//A鏄┖綾伙紝緙栬瘧鍣ㄤ細鐢ㄤ竴涓猚har綾誨瀷鏍囪榪欎釜綾伙紝澶у皬涓?
{
};
class B:public A//B緇ф壙浜咥錛屼絾鍚屾牱涔熸槸絀虹被錛屽ぇ灝忎負1
{
};
class C:virtual public A//铏氭嫙緇ф壙鐨勬椂鍊欑紪璇戝櫒浼氬畨鎻掍竴涓寚鍚戠埗綾葷殑鎸囬拡錛屽ぇ灝忎負4
{
};
class D//澶у皬涓?
{
public:
int a;
static int b;//闈欐佸彉閲忚鏀懼湪闈欐佸瓨鍌ㄥ尯
};
class E //print鍑芥暟涓嶅崰鍐呭瓨絀洪棿錛屽ぇ灝忎負4
{
public:
void print(){cout<<"E"<<endl;}
private:
int a;
};
class F//铏氬嚱鏁頒細鍗犵敤涓涓寚閽堝ぇ灝忕殑鍐呭瓨錛岀郴緇熼渶瑕佺敤榪欎釜鎸囬拡緇存姢铏氬嚱鏁拌〃銆傚ぇ灝忎負8
{
public:
virtual void print(){cout<<"F"<<endl;}
private:
int a;
};
class G:public F//澶氫簡涓涓櫄鍑芥暟鍐呭瓨澶у皬涓嶅彉錛屽彲瑙佷竴涓被鍙湁涓涓櫄鍑芥暟鎸囬拡銆傚ぇ灝忎負8
{
public:
virtual void print(){cout<<"G"<<endl;}
virtual void print2(){cout<<"G2"<<endl;}
};
int main()
{
A a;
B b;
C c;
D d;
E e;
F f;
G g;
cout<<sizeof(A)<<" "<<sizeof(a)<<endl;//1 1
cout<<sizeof(B)<<" "<<sizeof(b)<<endl;//1 1
cout<<sizeof(C)<<" "<<sizeof(c)<<endl;//4 4
cout<<sizeof(D)<<" "<<sizeof(d)<<endl;//4 4
cout<<sizeof(E)<<" "<<sizeof(e)<<endl;//4 4
cout<<sizeof(F)<<" "<<sizeof(f)<<endl;// 8 8
cout<<sizeof(G)<<" "<<sizeof(g)<<endl;//8 8
return 0;
}
]]>
]]>
#include<iostream>
using namespace std;
void fun1()
{
cout<<"fun1"<<endl;
}
void fun2()
{
cout<<"fun2"<<endl;
}
int main()
{
atexit(fun1);//娉ㄥ唽fun1錛屼富鍑芥暟緇堟鏃惰皟鐢?/span>
atexit(fun2);//娉ㄥ唽fun2錛屼富鍑芥暟緇堟鏃惰皟鐢?/span>
cout<<"mian exit"<<endl;
return 0;
}
//榪愯緇撴灉錛?/span>
main exit
fun2
fun1
extern鍏抽敭瀛楃殑浣滅敤
1銆?nbsp;澹版槑澶栭儴鍙橀噺鎴栬呭嚱鏁?/span>
褰撲綘鎵闇瑕佺殑鍙橀噺鎴栬呭嚱鏁板湪鍙︿竴涓枃浠墮噷杈圭殑鏃跺欙紝闄や簡鐢?/span>include鍖呭惈錛岃繕鍙互鐢?/span>extern澹版槑澶栭儴鍙橀噺鎴栬呭嚱鏁般?br />
榪欓噷瑕佹敞鎰忕殑涓鐐規槸錛宔xtern鍏抽敭瀛楃殑浣滅敤浠呬粎鏄0鏄庯紝娌℃湁鍒嗛厤鍐呭瓨絀洪棿錛屽0鏄庣殑鏍煎紡鍜屽畾涔夌殑鏍煎紡涓瀹氳涓ユ牸鐩哥銆?/p>
2銆?extern ”C” 閾炬帴鎸囧畾涓篊鍑芥暟搴?/p>
鍙傛暟閲嶈澆鏄疌++鐨勬柊鐗規э紝鍦–涓槸娌℃湁鐨勩傚湪浣跨敤C++鍐欎唬鐮佺殑鏃跺欙紝濡傛灉璋冪敤C鍑芥暟鍑洪敊錛堝嚭閿欑殑鍘熷洜瑙丆++閲嶈澆鐨勫疄鐜版満鍒訛級錛屽垯闇瑕佸0鏄巈xtern “C”灝嗛摼鎺ユ寚瀹氫負C鍑芥暟搴撱?/p>
闈欐佸叏灞鍙橀噺涓庢櫘閫氬叏灞鍙橀噺錛氫袱鑰呯殑瀛樺偍鏂瑰紡鐩稿悓錛岄兘瀛樺偍鍦ㄩ潤鎬佸尯錛岄潤鎬佸叏灞鍙橀噺鐨勪綔鐢ㄥ煙鏄畾涔夎鍙橀噺鐨勬簮鏂囦歡錛屾櫘閫氬叏灞鍙橀噺鐨勪綔鐢ㄥ煙鍒欐槸澶氫釜婧愭枃浠剁殑婧愮▼搴忥紝闈欐佸叏灞鍙橀噺鍙垵濮嬪寲涓嬈°傘?/span>
闈欐佸眬閮ㄥ彉閲忎笌鏅氬眬閮ㄥ彉閲?/span>錛氫袱鑰呯殑浣滅敤鍩熺浉鍚岋紝瀛樺偍鏂瑰紡涓嶅悓錛岄潤鎬佸眬閮ㄥ彉閲忓瓨鍌ㄥ湪闈欐佸尯錛屾櫘閫氬眬閮ㄥ彉閲忓瓨鍌ㄥ湪鏍堝尯銆傜敓瀛樻湡涔熶笉鍚岋紝闈欐佸眬閮ㄥ彉閲忕殑鐢熷瓨鏈熶負鏁翠釜紼嬪簭錛屾櫘閫氬眬閮ㄥ彉閲忕殑鐢熷瓨鏈熶粎涓哄畾涔夌殑閭f絀洪棿銆傞潤鎬佸眬閮ㄥ彉閲忓彧鍒濆鍖栦竴嬈°?/span>
闈欐佸嚱鏁頒笌鏅氬嚱鏁?/span>錛氫綔鐢ㄥ煙涓嶅悓錛岄潤鎬佸嚱鏁扮殑浣滅敤鍩熶粎鍦ㄨ瀹氫箟鐨勬簮鏂囦歡錛屾櫘閫氬嚱鏁板湪澶存枃浠剁殑杈呭姪涓嬪彲浠ヨ澶栭儴璁塊棶銆傞潤鎬佸嚱鏁板湪鍐呭瓨涓彧鏈変竴浠斤紝鑰屾櫘閫氬嚱鏁板湪鍐呭瓨涓彲浠ユ湁涓浠芥垨鑰呭浠芥嫹璐濄?/span>
C++緇ф壙浜?/span>C鐨勫叏閮ㄧ壒鎬э紝瀵?/span>C瀹炵幇浜嗗叏闈㈠吋瀹廣?/span>C++鍙堝疄鐜頒簡涓浜涙柊鐨勭壒鎬э紝姣斿璇村嚱鏁扮殑閲嶈澆銆?/span>
瑕佸疄鐜板嚱鏁扮殑閲嶈澆灝辮鏀瑰彉鍘熸湁鐨勫湪C涓嚱鏁板畾涔夌殑鏈哄埗錛屽湪C涓畾涔夊嚱鏁?/span>fun(int a,int b)錛岀紪璇戝櫒浼氭妸_fun鍐欏叆絎﹀彿搴撲腑錛屼嬌鐢?/span>fun()鏃朵細鍦ㄧ鍙峰簱涓壘鍒?/span>_fun錛屽茍璋冪敤銆?/span>
鍦?/span>C++涓紝鐢變簬瑕佸疄鐜伴噸杞斤紝闇瑕佸姞涓婂弬鏁扮殑鐗規э紝浜庢槸灝卞彉鎴愪簡_fun_int_int錛屽綋鍑芥暟涓?/span>fun(int a,double b)鏃訛紝緙栬瘧鍣ㄥ氨浼氭妸_fun_int_double鍐欏叆絎﹀彿搴擄紝榪欐牱灝卞疄鐜頒簡鍙傛暟鐨勫鎬併?/span>
鍏充簬C++鍐呭瓨鐨勫垝鍒嗭紝緗戜笂鐨勬葷粨宸茬粡寰堣緇嗕簡銆備笅杈規槸鎴戣漿杞界殑涓閮ㄥ垎銆?br />
涓銆佷竴涓粡榪囩紪璇戠殑C/C++鐨勭▼搴忓崰鐢ㄧ殑鍐呭瓨鍒嗘垚浠ヤ笅鍑犱釜閮ㄥ垎錛?/p>
銆銆1銆佹爤鍖猴紙stack錛夛細鐢辯紪璇戝櫒鑷姩鍒嗛厤鍜岄噴鏀撅紝瀛樻斁鍑芥暟鐨勫弬鏁板箋佸眬閮ㄥ彉閲忕殑鍊肩瓑錛岀敋鑷沖嚱鏁扮殑璋冪敤榪囩▼閮芥槸鐢ㄦ爤鏉ュ畬鎴愩傚叾鎿嶄綔鏂瑰紡綾諱技浜庢暟鎹粨鏋勪腑鐨勬爤銆?/p>
銆銆2銆佸爢鍖猴紙heap錛?錛氫竴鑸敱紼嬪簭鍛樻墜鍔ㄧ敵璇蜂互鍙婇噴鏀撅紝 鑻ョ▼搴忓憳涓嶉噴鏀撅紝紼嬪簭緇撴潫鏃跺彲鑳界敱OS鍥炴敹銆傛敞鎰忓畠涓庢暟鎹粨鏋勪腑鐨勫爢鏄袱鍥炰簨錛屽垎閰嶆柟寮忕被浼間簬閾捐〃銆?/p>
銆銆3銆佸叏灞鍖猴紙闈欐佸尯錛夛紙static錛夛細鍏ㄥ眬鍙橀噺鍜岄潤鎬佸彉閲忕殑瀛樺偍鏄斁鍦ㄤ竴鍧楃殑錛屽垵濮嬪寲鐨勫叏灞鍙橀噺鍜岄潤鎬佸彉閲忓湪涓鍧楀尯鍩燂紝鏈垵濮嬪寲鐨勫叏灞鍙橀噺鍜屾湭鍒濆鍖栫殑闈欐佸彉閲忓湪鐩擱偦鐨勫彟涓鍧楀尯鍩熴傜▼搴忕粨鏉熷悗鐢辯郴緇熼噴鏀劇┖闂淬?/p>
銆銆4銆佹枃瀛楀父閲忓尯錛氬父閲忓瓧絎︿覆灝辨槸鏀懼湪榪欓噷鐨勩?紼嬪簭緇撴潫鍚庣敱緋葷粺閲婃斁絀洪棿銆?/p>
銆銆5銆佺▼搴忎唬鐮佸尯錛氬瓨鏀懼嚱鏁頒綋鐨勪簩榪涘埗浠g爜銆?/p>
銆銆涓嬮潰鐨勪緥瀛愬彲浠ュ畬鍏ㄥ睍紺轟笉鍚岀殑鍙橀噺鎵鍗犵殑鍐呭瓨鍖哄煙錛?/p>
銆銆浜屻佹爤錛坰tack錛夊拰鍫嗭紙heap錛夊叿浣撶殑鍖哄埆銆?/p>
銆銆1銆佸湪鐢寵鏂瑰紡涓?/p>
銆銆鏍堬紙stack錛? 鐜板湪寰堝浜洪兘縐頒箣涓哄爢鏍堬紝榪欎釜鏃跺欏疄闄呬笂榪樻槸鎸囩殑鏍堛傚畠鐢辯紪璇戝櫒鑷姩綆$悊錛屾棤闇鎴戜滑鎵嬪伐鎺у埗銆備緥濡傦紝澹版槑鍑芥暟涓殑涓涓眬閮ㄥ彉閲?int b 緋葷粺鑷姩鍦ㄦ爤涓負b寮杈熺┖闂達紱鍦ㄨ皟鐢ㄤ竴涓嚱鏁版椂錛岀郴緇熻嚜鍔ㄧ殑緇欏嚱鏁扮殑褰㈠弬鍙橀噺鍦ㄦ爤涓紑杈熺┖闂淬?/p>
銆銆鍫嗭紙heap錛? 鐢寵鍜岄噴鏀劇敱紼嬪簭鍛樻帶鍒訛紝騫舵寚鏄庡ぇ灝忋傚鏄撲駭鐢焟emory leak銆?/p>
銆銆鍦–涓嬌鐢╩alloc鍑芥暟銆?/p>
銆銆濡傦細p1 = (char *)malloc(10);
銆銆鍦–++涓敤new榪愮畻絎︺?/p>
銆銆濡傦細p2 = new char[20];//(char *)malloc(10);
銆銆浣嗘槸娉ㄦ剰p1鏈韓鍦ㄥ叏灞鍖猴紝鑰宲2鏈韓鏄湪鏍堜腑鐨勶紝鍙槸瀹冧滑鎸囧悜鐨勭┖闂存槸鍦ㄥ爢涓?br />
new鐨勬湰璐ㄨ繕鏄嬌鐢╩alloc鐨勶紝浣嗘槸new鍜宮alloc榪樻槸鏈夊緢澶у尯鍒細
錛?錛塵alloc鏄疌璇█涓殑鍑芥暟錛宯ew鏄疌++涓殑鎿嶄綔絎?br />
錛?錛塵alloc鐨勮繑鍥炲兼槸VOID*錛宯ew榪斿洖鍊兼槸甯︽湁綾誨瀷鐨?br />
錛?錛塵alloc鍙礋璐e垎閰嶅唴瀛樿屼笉浼氳皟鐢ㄧ被鐨勬瀯閫犲嚱鏁幫紝new涓嶄粎浼氬垎閰嶅唴瀛橈紝榪樹細璋冪敤綾葷殑鏋勯犲嚱鏁?/p>
銆銆2銆佺敵璇峰悗緋葷粺鐨勫搷搴斾笂
銆銆鏍堬紙stack錛?鍙鏍堢殑鍓╀綑絀洪棿澶т簬鎵鐢寵絀洪棿錛岀郴緇熷皢涓虹▼搴忔彁渚涘唴瀛橈紝鍚﹀垯灝嗘姤寮傚父鎻愮ず鏍堟孩鍑恒?/p>
銆銆鍫嗭紙heap錛? 棣栧厛搴旇鐭ラ亾鎿嶄綔緋葷粺鏈変竴涓褰曠┖闂插唴瀛樺湴鍧鐨勯摼琛紝褰撶郴緇熸敹鍒扮▼搴忕殑鐢寵鏃訛紝浼氶亶鍘嗚閾捐〃錛屽鎵劇涓涓┖闂村ぇ浜庢墍鐢寵絀洪棿鐨勫爢緇撶偣錛岀劧鍚庡皢璇ョ粨鐐逛粠絀洪棽緇撶偣閾捐〃涓垹闄わ紝騫跺皢璇ョ粨鐐圭殑絀洪棿鍒嗛厤緇欑▼搴忋傚彟澶栵紝瀵逛簬澶у鏁扮郴緇燂紝浼氬湪榪欏潡鍐呭瓨絀洪棿涓殑棣栧湴鍧澶勮褰曟湰嬈″垎閰嶇殑澶у皬錛岃繖鏍鳳紝浠g爜涓殑delete鎴杅ree璇彞鎵嶈兘姝g‘鐨勯噴鏀炬湰鍐呭瓨絀洪棿銆傚彟澶栵紝鐢變簬鎵懼埌鐨勫爢緇撶偣鐨勫ぇ灝忎笉涓瀹氭濂界瓑浜庣敵璇風殑澶у皬錛岀郴緇熶細鑷姩鐨勫皢澶氫綑鐨勯偅閮ㄥ垎閲嶆柊鏀懼叆絀洪棽閾捐〃涓?/p>
銆3銆佺敵璇峰ぇ灝忕殑闄愬埗
銆銆鏍堬紙stack錛?鍦╓indows涓?鏍堟槸鍚戜綆鍦板潃鎵╁睍鐨勬暟鎹粨鏋勶紝鏄竴鍧楄繛緇殑鍐呭瓨鐨勫尯鍩熴傝繖鍙ヨ瘽鐨勬剰鎬濇槸鏍堥《鐨勫湴鍧鍜屾爤鐨勬渶澶у閲忔槸緋葷粺棰勫厛瑙勫畾濂界殑錛屽湪Windows涓嬶紝鏍堢殑澶у皬鏄?M錛堜篃鏈夌殑璇存槸1M錛屾諱箣鏄竴涓紪璇戞椂灝辯‘瀹氱殑甯告暟錛夛紝濡傛灉鐢寵鐨勭┖闂磋秴榪囨爤鐨勫墿浣欑┖闂存椂錛屽皢鎻愮ずoverflow銆傚洜姝わ紝鑳戒粠鏍堣幏寰楃殑絀洪棿杈冨皬銆備緥濡傦紝鍦╒C6涓嬮潰錛岄粯璁ょ殑鏍堢┖闂村ぇ灝忔槸1M錛堝ソ鍍忔槸錛岃涓嶆竻妤氫簡錛夈傚綋鐒訛紝鎴戜滑鍙互淇敼錛氭墦寮宸ョ▼錛屼緷嬈℃搷浣滆彍鍗曞涓嬶細Project->Setting->Link錛屽湪Category 涓変腑Output錛岀劧鍚庡湪Reserve涓瀹氬爢鏍堢殑鏈澶у煎拰commit銆?/p>
銆銆娉ㄦ剰錛歳eserve鏈灝忓間負4Byte錛沜ommit鏄繚鐣欏湪铏氭嫙鍐呭瓨鐨勯〉鏂囦歡閲岄潰錛屽畠璁劇疆鐨勮緝澶т細浣挎爤寮杈熻緝澶х殑鍊鹼紝鍙兘澧炲姞鍐呭瓨鐨勫紑閿鍜屽惎鍔ㄦ椂闂淬?/p>
銆銆鍫嗭紙heap錛? 鍫嗘槸鍚戦珮鍦板潃鎵╁睍鐨勬暟鎹粨鏋勶紝鏄笉榪炵畫鐨勫唴瀛樺尯鍩燂紙絀洪棽閮ㄥ垎鐢ㄩ摼琛ㄤ覆鑱旇搗鏉ワ級銆傛鏄敱浜庣郴緇熸槸鐢ㄩ摼琛ㄦ潵瀛樺偍絀洪棽鍐呭瓨錛岃嚜鐒舵槸涓嶈繛緇殑錛岃岄摼琛ㄧ殑閬嶅巻鏂瑰悜鏄敱浣庡湴鍧鍚戦珮鍦板潃銆備竴鑸潵璁插湪32浣嶇郴緇熶笅錛屽爢鍐呭瓨鍙互杈懼埌4G鐨勭┖闂達紝浠庤繖涓搴︽潵鐪嬪爢鍐呭瓨鍑犱箮鏄病鏈変粈涔堥檺鍒剁殑銆傜敱姝ゅ彲瑙侊紝鍫嗚幏寰楃殑絀洪棿姣旇緝鐏墊椿錛屼篃姣旇緝澶с?/p>
銆銆4銆佸垎閰嶇┖闂寸殑鏁堢巼涓?/p>
銆銆鏍堬紙stack錛?鏍堟槸鏈哄櫒緋葷粺鎻愪緵鐨勬暟鎹粨鏋勶紝璁$畻鏈轟細鍦ㄥ簳灞傚鏍堟彁渚涙敮鎸侊細鍒嗛厤涓撻棬鐨勫瘎瀛樺櫒瀛樻斁鏍堢殑鍦板潃錛屽帇鏍堝嚭鏍堥兘鏈変笓闂ㄧ殑鎸囦護鎵ц錛岃繖灝卞喅瀹氫簡鏍堢殑鏁堢巼姣旇緝楂樸備絾紼嬪簭鍛樻棤娉曞鍏惰繘琛屾帶鍒躲?/p>
銆銆鍫嗭紙heap錛?鏄疌/C++鍑芥暟搴撴彁渚涚殑錛岀敱new鎴杕alloc鍒嗛厤鐨勫唴瀛橈紝涓鑸熷害姣旇緝鎱紝鑰屼笖瀹規槗浜х敓鍐呭瓨紕庣墖銆傚畠鐨勬満鍒舵槸寰堝鏉傜殑錛屼緥濡備負浜嗗垎閰嶄竴鍧楀唴瀛橈紝搴撳嚱鏁頒細鎸夌収涓瀹氱殑綆楁硶錛堝叿浣撶殑綆楁硶鍙互鍙傝冩暟鎹粨鏋?鎿嶄綔緋葷粺錛夊湪鍫嗗唴瀛樹腑鎼滅儲鍙敤鐨勮凍澶熷ぇ灝忕殑絀洪棿錛屽鏋滄病鏈夎凍澶熷ぇ灝忕殑絀洪棿錛堝彲鑳芥槸鐢變簬鍐呭瓨紕庣墖澶錛夛紝灝辨湁鍙兘璋冪敤緋葷粺鍔熻兘鍘誨鍔犵▼搴忔暟鎹鐨勫唴瀛樼┖闂達紝榪欐牱灝辨湁鏈轟細鍒嗗埌瓚沖澶у皬鐨勫唴瀛橈紝鐒跺悗榪涜榪斿洖銆傝繖鏍峰彲鑳藉紩鍙戠敤鎴鋒佸拰鏍稿績鎬佺殑鍒囨崲錛屽唴瀛樼殑鐢寵錛屼唬浠峰彉寰楁洿鍔犳槀璐點傛樉鐒訛紝鍫嗙殑鏁堢巼姣旀爤瑕佷綆寰楀銆?/p>
銆銆5銆佸爢鍜屾爤涓殑瀛樺偍鍐呭
銆銆鏍堬紙stack錛?鍦ㄥ嚱鏁拌皟鐢ㄦ椂錛岀涓涓繘鏍堢殑鏄富鍑芥暟涓瓙鍑芥暟璋冪敤鍚庣殑涓嬩竴鏉℃寚浠わ紙瀛愬嚱鏁拌皟鐢ㄨ鍙ョ殑涓嬩竴鏉″彲鎵ц璇彞錛夌殑鍦板潃錛岀劧鍚庢槸瀛愬嚱鏁扮殑鍚勪釜褰㈠弬銆傚湪澶у鏁扮殑C緙栬瘧鍣ㄤ腑錛屽弬鏁版槸鐢卞彸寰宸﹀叆鏍堢殑錛岀劧鍚庢槸瀛愬嚱鏁頒腑鐨勫眬閮ㄥ彉閲忋傛敞鎰忥細闈欐佸彉閲忔槸涓嶅叆鏍堢殑銆傚綋鏈鍑芥暟璋冪敤緇撴潫鍚庯紝灞閮ㄥ彉閲忓厛鍑烘爤錛岀劧鍚庢槸鍙傛暟錛屾渶鍚庢爤欏舵寚閽堟寚鍚戞渶寮濮嬪瓨鐨勫湴鍧錛屼篃灝辨槸涓誨嚱鏁頒腑瀛愬嚱鏁拌皟鐢ㄥ畬鎴愮殑涓嬩竴鏉℃寚浠わ紝紼嬪簭鐢辮鐐圭戶緇繍琛屻?/p>
銆銆鍫嗭紙heap錛?涓鑸槸鍦ㄥ爢鐨勫ご閮ㄧ敤涓涓瓧鑺傚瓨鏀懼爢鐨勫ぇ灝忥紝鍫嗕腑鐨勫叿浣撳唴瀹規湁紼嬪簭鍛樺畨鎺掋?/p>
銆銆6銆佸瓨鍙栨晥鐜囩殑姣旇緝
銆銆榪欎釜搴旇鏄樉鑰屾槗瑙佺殑銆傛嬁鏍堜笂鐨勬暟緇勫拰鍫嗕笂鐨勬暟緇勬潵璇達細
銆
銆銆涓婇潰浠g爜涓紝arr1錛堝眬閮ㄥ彉閲忥級鏄湪鏍堜腑錛屼絾鏄寚鍚戠殑絀洪棿紜湪鍫嗕笂錛屼袱鑰呯殑瀛樺彇鏁堢巼錛屽綋鐒舵槸arr楂樸傚洜涓篴rr[1]鍙互鐩存帴璁塊棶錛屼絾鏄闂產rr1[1]錛岄鍏堣璁塊棶鏁扮粍鐨勮搗濮嬪湴鍧arr1錛岀劧鍚庢墠鑳借闂埌arr1[1]銆?/p>
銆銆鎬昏岃█涔嬶紝璦鑰屾諱箣錛?/p>
銆銆鍫嗗拰鏍堢殑鍖哄埆鍙互鐢ㄥ涓嬬殑姣斿柣鏉ョ湅鍑猴細
銆銆浣跨敤鏍堝氨璞℃垜浠幓楗閲屽悆楗紝鍙鐐硅彍錛堝0鏄庡彉閲忥級銆佷粯閽便佸拰鍚冿紙浣跨敤錛夛紝鍚冮ケ浜嗗氨璧幫紝涓嶅繀鐞嗕細鍒囪彍銆佹礂鑿滅瓑鍑嗗宸ヤ綔鍜屾礂紕椼佸埛閿呯瓑鎵熬宸ヤ綔錛屼粬鐨勫ソ澶勬槸蹇嵎錛屼絾鏄嚜鐢卞害灝忋?/p>
銆銆浣跨敤鍫嗗氨璞℃槸鑷繁鍔ㄦ墜鍋氬枩嬈㈠悆鐨勮彍鑲達紝姣旇緝楹葷儲錛屼絾鏄瘮杈冪鍚堣嚜宸辯殑鍙e懗錛岃屼笖鑷敱搴﹀ぇ銆?/p>
“C++11灝卞儚涓闂ㄦ柊鐨勮璦銆?#8221; – Bjarne Stroustrup
C++11鏍囧噯鎺ㄥ嚭浜嗗緢澶氭湁鐢ㄧ殑鏂扮壒鎬с傛湰鏂囩壒鍒叧娉ㄧ浉姣擟++98鏇村儚鏄竴闂ㄦ柊璇█鐨勯偅閮ㄥ垎鐗規э紝鍥犱負錛?/p>
榪欎簺鐗規ф敼鍙樹簡緙栧啓C++紼嬪簭浣跨敤鐨勪唬鐮侀鏍煎拰涔犺[TODO]錛岄氬父涔熷寘鎷綘璁捐C++鍑芥暟搴撶殑鏂瑰紡銆備緥濡傦紝浣犱細鐪嬪埌鏇村鍙傛暟鍜岃繑鍥炲肩被鍨嬩負鏅鴻兘鎸囬拡(smart pointer)錛屽悓鏃朵篃浼氱湅鍒板嚱鏁伴氳繃鍊間紶閫掕繑鍥炲ぇ鍨嬪璞?/p>
浣犲皢浼氬彂鐜板湪澶у鏁扮殑浠g爜紺轟緥涓厖鏂ョ潃鏂扮壒鎬х殑韜獎銆備緥濡傦紝鍑犱箮姣?琛岀幇浠++浠g爜紺轟緥閮戒細浣跨敤鍒?strong>auto
C++11鐨勫叾浠栫壒鎬т篃寰堟銆備絾鏄鍏堢啛鎮変笅闈㈣繖浜涳紝姝f槸鍥犱負榪欎簺鐗規х殑騫挎硾浣跨敤浣垮緱C++11浠g爜濡傚悓鍏朵粬鐜頒唬涓繪祦璇█涓鏍鋒暣媧併佸畨鍏ㄥ拰楂樻晥錛屼笌姝ゅ悓鏃朵繚鎸佷簡C++浼犵粺鐨勬ц兘浼樺娍銆?/p>
鎻愮ず錛?/p>
auto
nullptr
濮嬬粓浣跨敤nullptr琛ㄧず涓涓猲ull鎸囬拡鍊鹼紝緇濅笉瑕佷嬌鐢ㄦ暟瀛?鎴栬匩ULL瀹忥紝鍥犱負瀹冧滑涔熷彲浠ヤ唬琛ㄤ竴涓暣鏁版垨鑰呮寚閽堜粠鑰屼駭鐢熸涔夈?/p>
Range for
鍩轟簬鑼冨洿鐨勫驚鐜嬌寰楁寜欏哄簭璁塊棶鍏朵腑鐨勬瘡涓厓绱犲彉寰楅潪甯告柟渚褲?/p>
闇瑕佹敞鎰忥紝浣跨敤auto騫朵笉鏀瑰彉浠g爜鐨勫惈涔夈備唬鐮佷粛鐒舵槸闈欐佺被鍨嬶薊璇戞敞錛斤紝姣忎釜琛ㄨ揪寮忕殑綾誨瀷閮芥槸娓呮櫚鍜屾槑紜殑錛汣++11鍙槸涓嶉渶瑕佹垜浠噸澶嶅0鏄庣被鍨嬬殑鍚嶅瓧銆備竴浜涗漢鍒氬紑濮嬪彲鑳戒細瀹蟲曞湪榪欓噷浣跨敤auto錛屽洜涓烘劅瑙夊ソ鍍忔病鏈夛紙閲嶅錛夊0鏄庢垜浠渶瑕佺殑綾誨瀷灝辨剰鍛崇潃浼氱宸у緱鍒頒竴涓笉鍚岀殑綾誨瀷銆傚鏋滀綘鎯寵鏄庣‘鍦拌繘琛屼竴嬈?em>寮哄埗綾誨瀷杞崲錛屾病鏈夐棶棰橈紝澹版槑鐩爣綾誨瀷灝卞ソ浜嗐傜劧鑰屽ぇ澶氭暟鎯呭喌涓嬶紝鍙浣跨敤auto灝卞彲浠ヤ簡錛涘嚑涔庝笉浼氬嚭鐜伴敊璇湴鎷垮埌涓涓笉鍚岀被鍨嬬殑鎯呭喌錛屽嵆渚垮嚭鐜伴敊璇紝C++鐨勫己闈欐佺被鍨嬬郴緇熶篃浼氱敱緙栬瘧鍣ㄨ浣犵煡閬撹繖涓敊璇紝鍥犱負浣犳璇曞浘璁塊棶涓涓彉閲忔病鏈夌殑鎴愬憳鍑芥暟鎴栨槸閿欒鍦拌皟鐢ㄤ簡璇ュ嚱鏁般?/p>
璇戞敞錛氬姩鎬佺被鍨嬭璦錛坉ynamic typing language錛夋槸鎸囩被鍨嬫鏌ュ彂鐢熷湪榪愯鏈熼棿錛坮un-time錛夌殑璇█銆傞潤鎬佺被鍨嬭璦錛坰tatic typing language錛夋槸綾誨瀷媯鏌ュ彂鐢熷湪緙栬瘧鏈熼棿錛坈ompile-time錛夌殑璇█銆?/p>
鏅鴻兘鎸囬拡錛氭棤欏籨elete
璇峰緇堜嬌鐢ㄦ爣鍑嗘櫤鑳芥寚閽堜互鍙婇潪鍗犳湁鍘熷鎸囬拡(non-owning raw pointer)銆傜粷涓嶈浣跨敤鍗犳湁鍘熺敓鎸囬拡(owning raw pointer)鍜宒elete鎿嶄綔錛岄櫎闈炲湪瀹炵幇浣犺嚜宸辯殑搴曞眰鏁版嵁緇撴瀯榪欑灝戣鐨勬儏鍐典笅錛堝嵆浣垮湪姝ゆ椂涔熼渶瑕佸湪 class 鑼冨洿鍐呬繚鎸佸畬濂界殑灝佽錛夈傚鏋滃彧鑳藉鐭ラ亾浣犳槸鍙︿竴涓璞″敮涓鐨勬墍鏈夎咃紝璇蜂嬌鐢╱nique_ptr鏉ヨ〃紺哄敮涓鎵鏈夋潈錛圱ODO)銆備竴涓?#8221;new T”琛ㄨ揪寮忎細椹笂鍒濆鍖栧彟涓涓紩鐢ㄥ畠鐨勫璞★紝閫氬父鏄竴涓猽nique_ptr銆?br />
nullptr
濮嬬粓浣跨敤nullptr琛ㄧず涓涓猲ull鎸囬拡鍊鹼紝緇濅笉瑕佷嬌鐢ㄦ暟瀛?鎴栬匩ULL瀹忥紝鍥犱負瀹冧滑涔熷彲浠ヤ唬琛ㄤ竴涓暣鏁版垨鑰呮寚閽堜粠鑰屼駭鐢熸涔夈?/p>
Range for
鍩轟簬鑼冨洿鐨勫驚鐜嬌寰楁寜欏哄簭璁塊棶鍏朵腑鐨勬瘡涓厓绱犲彉寰楅潪甯告柟渚褲?br />
闈炴垚鍛橈紙nonmember錛?begin 鍜?end
濮嬬粓浣跨敤闈炴垚鍛榖egin鍜宔nd錛屽洜涓哄畠鏄彲鎵╁睍鐨勫茍涓斿彲浠ュ簲鐢ㄥ湪鎵鏈夌殑瀹瑰櫒綾誨瀷(container type)錛屼笉浠呬粎鏄伒寰簡STL椋庢牸鎻愪緵浜?.begin ()鍜?.end ()鎴愬憳鍑芥暟鐨勫鍣紝鐢氳嚦鏁扮粍閮藉彲浠ヤ嬌鐢ㄣ?/p>
濡傛灉浣犱嬌鐢ㄤ簡涓涓潪STL椋庢牸鐨刢ollection綾誨瀷錛岃櫧鐒舵彁渚涗簡榪唬浣嗘病鏈夋彁渚汼TL鐨?.begin ()鍜?.end ()錛岄氬父鍙互涓鴻繖涓被鍨嬬紪鍐欒嚜宸辯殑闈炴垚鍛榖egin鍜宔nd鏉ヨ繘琛岄噸杞姐傝繖鏍蜂綘灝卞彲浠ヤ嬌鐢⊿TL瀹瑰櫒鐨勭紪紼嬮鏍兼潵閬嶅巻璇ョ被鍨嬨侰++11鏍囧噯鎻愪緵浜嗙ず渚?C鏁扮粍灝辨槸榪欐牱涓涓被鍨嬶紝鏍囧噯鍚屾椂涓烘暟緇勬彁渚涗簡begin鍜宔nd銆?/p>
Lambda 鍑芥暟鍜岀畻娉?/strong>
Lambda[TODO]鏄喅瀹氫咕鍧ょ殑鍥犵礌錛屽畠浼氫嬌浣犵紪鍐欑殑浠g爜鍙樺緱鏇翠紭闆呫佹洿蹇熴侺ambda浣垮緱STL綆楁硶鐨勫彲鐢ㄦф彁楂樹簡榪?00鍊嶃傛柊榪戝紑鍙戠殑C++鍑芥暟搴撻兘鏄熀浜巐ambda鍙互鐢ㄧ殑鍓嶆彁錛堜緥濡傦紝PPL錛夊茍涓旀湁浜涘嚱鏁板簱鐢氳嚦瑕佹眰浣犵紪鍐檒ambda鏉ヨ皟鐢ㄥ嚱鏁板簱錛堜緥濡傦紝C++ AMP錛?/p>
涓嬮潰鏄竴涓揩閫熺ず渚嬶細鎵懼埌v閲岄潰澶т簬x騫朵笖灝忎簬y鐨勭涓涓厓绱犮傚湪C++11涓紝鏈綆鍗曞拰騫插噣鐨勪唬鐮佸氨鏄皟鐢ㄤ竴涓爣鍑嗗嚱鏁般?br />
Move / &&
Move琚涓烘槸copy鐨勬渶浣充紭鍖栵紝灝界瀹冧篃浣垮緱鍏朵粬浜嬫儏鎴愪負鍙兘姣斿淇℃伅琚漿鍙戙?/p>
Move璇硶鏀瑰彉浜嗘垜浠璁PI鐨勬柟寮忋傛垜浠彲浠ユ洿澶氬湴璁捐閫氳繃鍊間紶閫掋備負浣犵殑綾誨瀷鍚敤move璇硶錛屼嬌鐢ㄦ椂浼氭瘮copy鏇存湁鏁堛?/p>
鏇村鍙樺寲
榪樻湁鏇村鐜頒唬C++鐨勭壒鎬с傚茍涓旀垜璁″垝鍦ㄦ湭鏉ョ紪鍐欐洿澶氭繁鍏++11鏂扮壒鎬т互鍙婂叾浠栫壒鎬х殑鐭枃錛屾垜浠細鐭ラ亾鏇村騫朵笖鍠滄涓婂畠銆?/p>
浣嗙洰鍓嶏紝榪欐槸蹇呴』鐭ラ亾鐨勬柊鐗規с傝繖浜涚壒鎬х粍鎴愪簡鐜頒唬C++椋庢牸鐨勬牳蹇冿紝浣垮緱C++浠g爜鐪嬭搗鏉ュ拰鎵ц鏃跺儚浠栦滑璁捐鐨勯偅鏍鳳紝浣犲皢浼氱湅鍒拌繖浜涚壒鎬т細鍑虹幇鍦ㄥ嚑涔庢瘡涓孌典綘鐪嬪埌鎴栬呯紪鍐欑殑鐜頒唬C++浠g爜涓傚茍涓斿畠浠嬌寰楃幇浠++鏇村姞騫插噣銆佸畨鍏ㄤ笖蹇燂紝浣垮緱C++鍦ㄦ湭鏉ョ殑鑻ュ共騫翠粛鐒舵槸鎴戜滑浜т笟鐨勪緷闈犮?/p>
涓昏鍙樻洿
2011-10-30:涓篖ambda澧炲姞C#lock紺轟緥銆傞噸鏂扮粍緇囨櫤鑳芥寚閽堥鍏堜粙緇島nique_prt銆?/p>
鏂囩珷鍑鴻嚜錛?a target="_blank" style="color: #015fb6; text-decoration: none; ">浼箰鍦ㄧ嚎