[Solved] Why compilers put zeros into arrays while they do not have to?
[ad_1] A structValue{}; is aggregate initialization, so 0 are guaranteed. As A has no user provided constructor because explicitly defaulted constructors do not count as such, the same applies for value initialization as in A* psstructValue = new A();. For the default initialization cases: Reading uninitialized variables is UB, and Undefined behavior is undefined. The … Read more