代码如下: 问题, vector<int> father=vector<int>(n,0);不报错,而使用vector<int> father(n,0);报错未定义的n?为什么?class Solution {private: int n=200005; vector<int> father=vector<int>(n,0); // vector<int> father(n,0); void init(){ for(int i=0;i<n;i++){ father[i]=i; } } int find(int u){ return u==father[u]?u:find(father[u]); } bool isSame(int u,int v){ u=find(u); v=find(v); return u==v; } void join(int u,int v){ u=find(u); v=find(v); if(u==v) return; father[v]=u; }public: bool validPath(int nn, vector<vector<int>>&amp; edges, int source, int destination) { init(); for(int i=0;i<edges.size();i++){ join(edges[i][0],edges[i][1]); } return isSame(source,destination); }};