1、深拷貝和淺拷貝
編譯系統在我們沒有自己定義拷貝建構函式時,會在拷貝物件時呼叫預設拷貝建構函式,進行的是淺拷貝
在對含有指標成員的物件進行拷貝時,必須要自己定義拷貝建構函式,使拷貝後的物件指標成員有自己的記憶體空間,即進行深拷貝
2、bool,int,float,指標型別與0進行比較
bool a;
if(a);
int a;
if(a==0)
float a;
if(abs(a)<=epsilon)
if(abs(a)>epsilon) //其中epsilon為精度
int *a;
if(a==null)
3、不使用中間變數實現兩個變數的轉換
//1) 算術運算
int a,b;
a=10;b=12;
a=b-a; //a=2;b=12
b=b-a; //a=2;b=10
a=b+a; //a=10;b=10
//2) 指標位址操作
int *a,*b; //假設
*a=new
int(10);
*b=new
int(20); //&a=0x00001000h,&b=0x00001200h
a=(int*)(b-a); //&a=0x00000200h,&b=0x00001200h
b=(int*)(b-a); //&a=0x00000200h,&b=0x00001000h
a=(int*)(b+int(a)); //&a=0x00001200h,&b=0x00001000h
//3) 位運算
int a=10,b=12; //a=1010^b=1100;
a=a^b; //a=0110^b=1100;
b=a^b; //a=0110^b=1010;
a=a^b; //a=1100=12;b=1010;
//4) 棧實現。
int exchange(int x,int y)
4、用巨集定義實現 min,返回較小值
#define min(a,b) ((a) <= (b)? (a) : (b))
5、常見編碼格式,及亂碼的原因
常見字符集編碼格式名稱:
ascii編碼、gb2312編碼、gbk編碼、gb18030編碼、utf-8編碼、big5編碼、unicode編碼
一般可以分成五種型別:
常見C 知識點
1 非c 內建型別 a 和 b,在哪幾種情況下b能隱式轉化為a?a.class b public a b公有繼承自a,可以是間接繼承的 b.class b b實現了隱式轉化為a的轉化 c.class a a實現了non explicit的引數為b 可以有其他帶預設值的引數 建構函式 d.a oper...
常見知識點總結 1
1.獲得專案中info.plist檔案的內容 1 nsbundle mainbundle infodictionary 2 版本號在info.plist中的key kcfbundleversionkey 2.自定義控制器的view 重寫loadview方法 不需要呼叫 super loadview ...
js常見知識點 1
物件訪問 book.topic 等價於book topic var index topic book index 等價於book.topic math函式 math.pow 2,3 math.round 1.6 math.ceil 0.6 math.floor 0.6 math.random nan...