1.盡量使用一個構造函數。
原因:如果使用多個構造函數,可能導致在有很多個實例變量的時候沒有在所有的構造函數中初始化,從而造成錯誤!
可以用默認值的方法來達到提供默認構造函數。
2.在考慮跨平臺時要盡量不使用int,unsigned系列的類型,因為不同平臺對它們所占的字節數不一定相同。
3.技巧:使用
do
{
}while(0);
這樣就可以在合適的時候break。然后在while后面做最后的處理。
class A
{
.....
};
4.對于數組初始化時可以用
A arr[10]={0};
或者memset(arr,0,sizeof(arr));
而盡量不要使用memset(arr,0,10*sizeof(A));
在用第二種方法memset(arr,0,10*sizeof(A))時在A的名稱變化或者數組大小變化的時候都要修改。
但要特別注意
如果 A *a = new A[10];
就一定要用memset(a,0,10*sizeof(A));因為a是指針,所以sizeof(a)為4。