0

只是想知道, C ++中的类中的这些初始化有什么区别

第一的:

Complex (): real(0), imaginary(0) { }

第二:

Complex() {
   real = 0;
   imaginary = 0;
}
4

1 回答 1

0

在第一个变体中,成员直接用值初始化(可以时使用)。这是初始化 const 成员的唯一方法。常量有许多有用的副作用。

在第二个变体中,成员首先被默认初始化(由编译器生成的代码)然后分配值(在无法避免时使用,通常可以)。

于 2018-09-27T13:59:00.080 回答