我正在尝试使用vector的struct来连接节点,为我的数据结构课程构建一个树。 这是我的代码。
#include<iostream>
#include<string>
#include<vector>
using namespace std;
struct node
{
vector<node> *next;
string val;
int tagid;
};
int main()
{
string operation;
node *head=new node;
head->next->resize(1);
return 0;
}
现在我尝试使用此代码修改第一个元素的指针
head->next[0]=NULL;
编译器给出了错误no match for ‘operator=’
。如何正确编写它以便能够修改它的元素?
答案 0 :(得分:0)
关注@Zaiborg评论,这对我有用:
#include <iostream>
#include <string>
#include <vector>
using namespace std;
struct node {
vector<node*> next;
string val;
int tagid;
};
int main()
{
string operation;
node *head = new node;
head->next.resize(1);
head->next[0] = NULL;
return 0;
}
编译:g ++ -Wall在编译时没有警告,也没有错误。