class Trie {
private:
vector<vector<int>> next(2000, vector<int>(26, 0));
vector<bool> exist(2000);
};
错误原因是:编译器无法区分该语句是成员变量声明还是成员函数声明。简而言之就是因为这种初始化方式看起来像是一个函数。
解决办法是:消除歧义。
可以通过以下方式解决
class Trie {
private:
vector<vector<int>> next = vector<vector<int>>(2000, vector<int>(26, 0));
vector<bool> exist = vector<bool>(2000);
};