以下代码是产生定义的行为还是未定义的行为。我在我的 VC++ 上尝试了它,我得到了一件事,但我很好奇这是否只是巧合,或者它是否是 c++ 标准规定的。
#include <iostream>
class TestClass {
public:
char testChar;
double testDouble;
int testInt;
};
int main(int argc, char** argv) {
TestClass s = {412.1, 52};
std::cout << s.testChar + s.testDouble + s.testInt << std::endl;
}