Why do I get these warnings in Visual C++ 2008 when building a struct?

前端 未结 3 781
太阳男子
太阳男子 2021-01-18 10:37

I have this code

typedef struct
{
    const char* fooString;
    const bool  fooBool;
}fooStruct;

And this initializer:

sta         


        
3条回答
  •  有刺的猬
    2021-01-18 11:00

    Also if you do partial initialization then MSVC2008 will throw errors (as does MSVC2010) which is incorrect behavior as defined by C++03 and C++11. I posted more on this in another thread on stack overflow which you can read here

    // Partial initialization, leaving it to the compiler
    // to do aggregate value-initialization
    fooStruct foo ={"file1", /*missing true/false, compiler should set false*/ };
    

    MSVC will throw an error on this code along with the warnings you mentioned.

提交回复
热议问题