【问题标题】:getting an error during overloading the operations在重载操作时出错
【发布时间】:2011-07-25 21:52:53
【问题描述】:

已解决

我正在编写一个代码,用于使用 Visual C++ 2010 在 C++ 中通过链表进行设置。 当我想重载操作时,我得到这个错误

1>test.obj : error LNK2019: unresolved external symbol "public: __thiscall MySet::MySet(class MySet const &)" (??0MySet@@QAE@ABV0@@Z) 在函数 "public: class MySet __thiscall MySet::operator=(class MySet)" (??4MySet@@QAE?AV0@V0@@Z)

请帮助我。 我应该如何阅读这个错误

【问题讨论】:

  • 给我们看一些代码。例如,给我们operator= 和构造函数
  • 您的项目是否包含多个文件?如果是,请解释结构。
  • 是的。它位于单独的文件 Set.h 和 Set.cpp 以及 setTester.cpp
  • 链接器正在寻找MySet::operator=(class MySet),但找不到它。在下面您自己的答案中,您已将其注释掉。这会影响链接器...

标签: c++ linker unresolved-external


【解决方案1】:

您是否声明并定义了以下构造方法?

MySet::MySet(const MySet &other)
{
    ....
}

【讨论】:

  • 在添加复制构造函数后问题解决了。谢谢你因为我的代表我不能投票给你的答案。对不起
  • @femchi,您应该接受答案,而不是在您提出问题时投赞成票。接受解决您问题的答案很重要。
猜你喜欢
  • 1970-01-01
  • 2020-09-24
  • 1970-01-01
  • 1970-01-01
  • 2013-01-12
  • 1970-01-01
  • 2021-02-26
  • 1970-01-01
  • 2015-07-11
相关资源
最近更新 更多