gpt4 book ai didi

c++ - 不同结构体初始化方法的区别

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:24:13 25 4
gpt4 key购买 nike

我知道在 C++ 中有许多不同的方法可以完成同一件事;但是,我想知道这些初始化结构的方法之间的区别。我还想知道 C++ 的处理方式是什么,因为我知道其中一些方法来自 C。

struct MyStruct
{
int x, y, z;
};

MyStruct s1 = { 0 }; //I think this is from C but not really sure.
MyStruct s2 = { }; //I think this might be from C++
MyStruct s3 = { sizeof(MyStruct) } ; //Not sure where this comes from but I like it

在用 C++ 编程时,我应该使用哪个?

最佳答案

MyStruct s3 = { sizeof(MyStruct) } ; 不太可能按照您的想法行事:

struct MyStruct
{
int a;
int b;
};

在此示例中,MyStruct s3 = { sizeof(MyStruct) } ; 会将 x3.a 初始化为 8,将 x3.b 初始化为0.

关于c++ - 不同结构体初始化方法的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14368214/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com