C++结构体问题
c吧
全部回复
仅看楼主
level 1
北冥雪❛‿˂̵✧
楼主
结构体都必须要添加构造函数嘛,不能想C语言那样?
2022年11月14日 07点11分
1
level 14
aaaaaaa421
不要使用 union,除非你对自己的 C++ 水平很有自信。C++ 已经提供了 std::variant,足够满足你的需求。
2022年11月14日 07点11分
2
hdudwugdih
2022年11月14日 07点11分
北冥雪❛‿˂̵✧
好吧,我还以为C++的结构体和C语言差不多
2022年11月14日 09点11分
想晚大魔王
大佬能解释一下为啥吗
2022年11月15日 01点11分
aaaaaaa421
回复 想晚大魔王 :首先,你得了解什么是平凡类型(在以前的 C++ 中也被称作 POD 类型)、平凡与否对 union 又会造成什么影响;其次,你至少需要清楚地了解 union 活跃成员及其生命周期的管理、placement new、std::destroy_at
2022年11月15日 03点11分
level 1
dong211112
构造函数不是只有类才能加吗,结构体里面就是数据
2022年11月14日 07点11分
3
已经秃了🌝🌝
C++的类就是强化版结构体
2022年11月15日 23点11分
想转土木捏😇
@已经秃了🌝🌝
cpp类就是结构体 区别在默认private以及默认私有继承
2022年11月29日 05点11分
level 1
怒人水瓶
你是不是写了一个有参构造,你这儿错误提示默认构造被删除了
2022年11月14日 10点11分
4
北冥雪❛‿˂̵✧
没有哇
2022年11月14日 13点11分
level 6
Waaaaf
结构体中包含了无默认构造函数的类型
2022年11月14日 14点11分
5
北冥雪❛‿˂̵✧
所有类型都有默认构造函数的
2022年11月15日 01点11分
Waaaaf
@北冥雪❛‿˂̵✧
这一点通过显式声明默认构造函数为=default是容易验证的。
2022年11月15日 02点11分
level 5
钱欢银
c++11前并不支持union内有非pod类型
2022年11月14日 16点11分
6
北冥雪❛‿˂̵✧
我这是C++20
2022年11月15日 01点11分
level 1
xianjianmo
你也可以不写,甚至class也可以不写,至于跑起来会不会出问题,那就要问你自己了
2022年11月14日 22点11分
7
level 7
宇皇大帝
class都可以不写构造函数!
2022年11月15日 02点11分
9
level 1
-
cpp里面结构体和类的区别只有初始访问权限不同,而且不写构造和析构,编译器也会默认给一个空实现。
2022年11月15日 02点11分
10
1