使用新结构体进行聚合初始化是否有效
Is aggregate initialization with a new struct valid?
像Struct* a = new Struct{1,2,3};
这样的短语是否有效?
它编译和运行得很好,但是我想知道在幕后是否有什么奇怪的事情发生。
struct Struct {
int a;
int b;
int c;
}
该代码将为新的Struct
分配内存,并初始化成员1,2,3,最后将指向该结构体的指针放入变量a
中。我不知道你是否认为这是时髦的
相关文章:
- 列表初始化是否将原子初始化为零
- 使用函数声明进行函数指针初始化 - 是否可能
- 值初始化是否适用于原子对象?
- 聚合的值初始化是否使用其成员的默认初始值设定项?
- C 11联合会的空列表初始化 - 是否保证可以初始化工会的全长
- 找出静态初始化是否结束
- 非本地非内联变量的初始化:是否严格在"main()"函数调用之前进行
- 空字符数组的初始化是否有效
- 变量零初始化-是否有未定义的行为
- 0-原子的初始化是否保证将值成员设置为0
- POD 类对象初始化是否需要构造函数
- 在C++中使用类似 c 的初始化或构造函数初始化是否被认为更好
- 类内成员初始化是否删除赋值运算符
- C++11;非静态数据成员初始化是否可以访问其他数据成员
- 列表初始化是否为隐式转换
- 复制列表初始化是否在概念上调用复制 ctor
- 如何测试/验证零初始化是否发生
- C++默认初始化是否保留先前的零初始化
- 使用新结构体进行聚合初始化是否有效
- 检测CRT初始化是否在注入过程中完成