错误:在构造函数(C++)中没有重载函数的实例
Posted
技术标签:
【中文标题】错误:在构造函数(C++)中没有重载函数的实例【英文标题】:Error: no instance of overloaded function, in constructor (C++) 【发布时间】:2013-04-06 11:03:07 【问题描述】:我有一个很奇怪的问题...首先,这是我班级的文件:
显示.h:
#ifndef SHOW
#define SHOW
#include <iostream>
#include <string>
#include <string.h>
class Show
private:
std::string m_time;
int m_serial
public:
Show(const std::string &time, const int &serial);
~Show();
;
#endif
显示.c:
#include "Show.h"
Show::Show(const std::string &time,const int &serial)
如你所见,我只写了构造函数的声明,当visual studio在Show.c文件中的第二个“Show”字下划线时,告诉我:
"void Show::Show(const std::string &time,const int &serial)
显示::显示()
Show::Show(const Show &)
错误:没有重载函数“Show::Show”的实例与特定类型匹配”
当我将鼠标光标停留在 Show.h 文件中的构造函数上时,看起来该函数不存在...我以前用 C++ 编写过一些类,这是第一次这发生在我身上...请帮助:(
【问题讨论】:
int m_serial
后面需要;
。
与您的问题无关:您可能希望将 std 标头包含内容移至 .c 文件(您忘记将;
放在m_serial
字段变量之后。我相信这是您遇到问题的原因。不幸的是,许多编译器没有给出此类问题的确切原因,因此您必须小心语法规则。
【讨论】:
大声笑这解决了它。我在这个东西上坐了半个小时试图弄清楚它是“;”......非常感谢:)以上是关于错误:在构造函数(C++)中没有重载函数的实例的主要内容,如果未能解决你的问题,请参考以下文章
C++类与对象(详解构造函数,析构函数,拷贝构造函数,赋值重载函数)
每个构造函数,方法和运算符重载的c ++多重定义错误[重复]