我是一名学生,还没有学过向量,但我现在需要使用它们。我正在尝试制作一个结构向量。struct 是汇编代码的标签。每次我想添加标签时,我都会调整向量的大小,但是,当我尝试从标签中检索信息时,它们都是相同的。不幸的是,我实际上无法分享我的代码,但我会展示我认为有助于我解决这个问题的必要行。那么,我做错了什么?如果您需要查看更多代码,请告诉我。
全球宣布:
vector<Label> labeldir;
调整向量大小并添加信息,label 是汇编代码文件中的标签名称:
labeldir.resize(labelnum + 1);
labeldir[labelnum].name = label;
注意:它在while循环中运行,每次找到标签时都会增加labelnum。
访问每个标签名称的示例:
for (int i = 0; i < labeldir.size(); i++){
cout << "Label entry " << i << " name : " << labeldir[i].name << endl;
}
相应的输出,注意问题(上面的代码在一个while循环中,这是它的3次迭代):
Label entry 0 name : start
Label entry 0 name : done
Label entry 1 name : done
Label entry 0 name : five
Label entry 1 name : five
Label entry 2 name : five
汇编代码中的前 3 个标签,在第一个和第二个标签之间会有一行,但它们是常规指令。:
start add 1 2 1 decrement reg1
done halt end of program
five .fill 5