0

我有一个包含三个列表和一个整数的结构,如下面的代码所示。

struct MainScreenState 
{
    std::list<char*> sessionId;
    std::list<char*> opposingUser;
    std::list<char*> currentMove;
    int totalScore;
    MainScreenState() {
        totalScore = 0;
    }
};
struct MainScreenState *state;

可以使用构造函数初始化 int,但是如何初始化列表对象以避免编译器警告“警告 C4700:未初始化的局部变量 'state'”。

4

1 回答 1

2

std::list成员被自动初始化。问题出在state未初始化的变量上。

MainScreenState *state = NULL; //struct keyword not necessary in C++

或(根据请求)

MainScreenState *state = new MainScreenState;

或者更喜欢使用自动存储变量或智能指针。

于 2012-06-13T14:14:42.127 回答