//c++98使用{}對陣列初始化int arr = ;
int arr[4] = ;
//但對於自定義型別會報錯
vectorv;
//內建型別int x1 = ;
int x2;
int x3 = 1+2;
int x4 = ;
int x5;
//陣列
int arr1[5] ;
int arr2 ;
//動態陣列 , c++98不支援
int* arr3 = new int[5];
//標準容器
vectorv;
mapm,,};
//1.支援對單個物件直接列表初始化initialzer_list基本用法:class point
private:
int _x;
int _y;
};point p;
//2.多個物件列表初始化需要過載乙個帶有initialzer_list型別引數的建構函式
//initialzer_list: 系統自定義類模板 主要方法:begin(),end(),size()
//模擬vector借用initialzer_list實現多物件初始化
#includeclass vector
}vector& operator=(initialzer_listl)
return *this;
}//...
private:
t* _arr;
size_t _cap;
size_t _size;`
};
C 11 就地初始化與列表初始化
在 c 11 之前,只能對結構體或類的靜態常量成員進行就地初始化,其他的不行。class c class c or int b c 11 only int c 7 error 注意,小括號初始化方式不能用於就地初始化。c 11 支援了就地初始化非靜態資料成員的同時,初始化列表的方式也被保留下來,也就...
c 11 就地初始化與列表初始化
還可以看看 在c 11之前,只能對結構體或類的靜態常量成員進行就地初始化,其他的不行。class c class c 或int b c 11 only int c 7 error 1.2就地初始化與初始化列表的先後順序 c 11標準支援了就地初始化非靜態資料成員的同時,初始化列表的方式也被保留下來,...
C 11 學習筆記 列表初始化
一.列表初始化 1.在c 98 03中,只有普通陣列和pod型別 plain old data型別,可以直接使用memcpy複製的物件 可以用初始化列表來進行初始化。int i arr 3 long l arr 3 struct a a 2.在c 11中,初始化列表可以用於任何型別物件的初始化列表,...