C ++ / Eclipse中的未定义符号错误[关闭]
Posted
技术标签:
【中文标题】C ++ / Eclipse中的未定义符号错误[关闭]【英文标题】:Undefined symbols error in C++ / Eclipse [closed] 【发布时间】:2009-12-11 08:06:45 【问题描述】:我有一个函数可以在表格中显示向量的值,但在链接时我不断收到“未定义符号”错误。
这是我的函数原型:
void displayVectors(vector<string> & nameVec, vector<double> & scoreVec, vector<char> & gradeVec);
这是定义:
void dipslayVectors(vector<string> & nameVec, vector<double> & scoreVec, vector<char> & gradeVec)
for (int i = 0; i < nameVec.size(); i++)
cout << setw(12) << nameVec[i]
<< setw(8) << scoreVec[i]
<< setw(2) << gradeVec[i]
<< endl;
这就是我所说的:
displayVectors(nameVec, scoreVec, gradeVec);
我确定 nameVec、scoreVec 和gradeVec 都是正确的向量类型,而且我包含了所有库,所以我很难过。我在 Google 上看到其他人在使用此类向量时遇到问题,但他们总是发现自己犯了一些错误。有人有什么想法吗?
【问题讨论】:
您是否尝试从 shell 编译它以了解它是 eclipse 问题还是更普遍的问题? 哪些符号被报告为未定义? 抱歉,我确实忘记添加实际的错误消息,但似乎没关系... 【参考方案1】:假设您直接剪切并粘贴了您的问题,那么 void dipslayVectors
是定义中的拼写错误
【讨论】:
总是小细节... 是的......当你一个人工作时,SO非常适合第二组眼球 我在我的代码中盯着它们看了那么久,并没有看到任何拼写错误,当你指出来时,我还得看了大约20秒……哇,太晚了……谢谢!奇怪的是,它从来没有像在编译时发现错误时那样用红色指出错误。然后,我点击了其他一些调试键,它告诉我它尚未定义。 拼写错误突然出现在我身上——我正要编辑它,因为我认为这是您的示例中的拼写错误,而不是您的实际代码。我很高兴我没有“解决”这个问题!【参考方案2】:从您的代码中可能有 2 个可能的错误来源:
1.dipslayVectors 拼写错误。
2.您可能没有定义实际参数。
3.一个建议是function const,因为它只读取数据并将形参作为对const数据的引用。
【讨论】:
以上是关于C ++ / Eclipse中的未定义符号错误[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
终端中的“架构 x86_64 的未定义符号”,但 xcode 中没有错误