Я запутался, почему следующий код не может скомпилироваться из-за следующей ошибки: 'rootLevel' was not declared in this scope
.
В моем понимании, struct NodeLevel
объявлен и определен до class Solution
, не является ли это достаточным условием для того, чтобы этот класс был доступен для класса Solution
?
Спасибо!
struct NodeLevel{
int level;
BinaryTreeNode * node;
NodeLevel(int val, BinaryTreeNode * x) : level(val), node(x) {}
};
class Solution {
public:
vector<vector<int>> levelOrder(BinaryTreeNode* root) {
queue<NodeLevel> q;
rootLevel = NodeLevel(0, root);
q.push(rootLevel);
/*
do some stuff with the queue
*/
}
};