如何将结构内的所有内容设置为0?

1 c++ database struct

我有一个结构有3种不同类型的值(char,float,int).......我需要在程序开始时将所有值设置为0.我怎么做?

Jam*_*nze 6

通常有两种方式:

A a = A();
Run Code Online (Sandbox Code Playgroud)

要么

A a = {};
Run Code Online (Sandbox Code Playgroud)

第一个优点是,如果您以后提供构造函数,它仍然有效(只要您提供默认构造函数).

关于使用建议memset:memset仅保证适用于整体类型.我无法想象它不适合a float,但正式地说,它不能保证.当然,如果你以后修改它struct,它可能会停止工作.这是一个避免的解决方案.