当我使用初始值设定项列表时什么是缩小转换?
What is narrowing cast when I use initializer list?
一个人告诉我这样写更有效
SomeType val{another_val};
比
SomeType val = another_val;
因为在第二种情况下我们缩小了演员阵容。
你能解释一下这是什么吗?使用初始化列表进行初始化是否更有效?
使用大括号是使代码更安全的另一种方式,仅此而已。例如
int main() {
unsigned n = -1.0; // hopefully a compiler warning, undefined behaviour
unsigned m {-1.0}; // certainly a compiler diagnostic
}
一个人告诉我这样写更有效
SomeType val{another_val};
比
SomeType val = another_val;
因为在第二种情况下我们缩小了演员阵容。
你能解释一下这是什么吗?使用初始化列表进行初始化是否更有效?
使用大括号是使代码更安全的另一种方式,仅此而已。例如
int main() {
unsigned n = -1.0; // hopefully a compiler warning, undefined behaviour
unsigned m {-1.0}; // certainly a compiler diagnostic
}