hint:初始化不等於賦值;
int a=0;
int a={0};
int a(0);
int a{0};
以上都是正確的初始化;但是以下情況不能等價的使用
但是在使用等號(拷貝初始化)時,只能提供一個初始值;
如果提供類內初始值,只能使用拷貝初始化或者花括號的形式;
如果提供初始元素值的列表,只能通過花括號的形式;
hint:如果列表初始化會存在丟失信息的風險,編譯器會報錯;
float b=0.5;
int a{b};//報錯
int a(b);//OK
hint:初始化不等於賦值;
int a=0;
int a={0};
int a(0);
int a{0};
以上都是正確的初始化;但是以下情況不能等價的使用
但是在使用等號(拷貝初始化)時,只能提供一個初始值;
如果提供類內初始值,只能使用拷貝初始化或者花括號的形式;
如果提供初始元素值的列表,只能通過花括號的形式;
hint:如果列表初始化會存在丟失信息的風險,編譯器會報錯;
float b=0.5;
int a{b};//報錯
int a(b);//OK