c++ - 另一个 'member declaration not found'

标签 c++ eclipse mingw

我已经有一段时间没有编写任何 C++ 了,我只是想制作一个简单的程序来复制不同类型的时钟来刷新我的内存。

我已经开始编写一个Clock 父类(super class),并且为除我的构造函数/析构函数之外的每个方法都得到了一个未找到成员声明。我认为这是某个地方的小错误,但我无法发现任何东西。

时钟.h

/*
 * Clock.h
 */

#ifndef CLOCK_H_
#define CLOCK_H_

class Clock {
private:
    int seconds;
    int minutes;
    int hours;

public:
    Clock();
    Clock(int, int, int);
    virtual ~Clock();
    virtual void tick() = 0;
    void setTime(int, int, int);
    void print();
};

#endif /* CLOCK_H_ */

时钟.cpp

/*
* Clock.cpp
 */

#include "Clock.h"
#include <iostream>

Clock::Clock() {
    seconds = 0;
    minutes = 0;
    hours = 0;
}

Clock::Clock(int secs, int mins, int hrs) :
        seconds(secs), minutes(mins), hours(hrs) {
}

Clock::~Clock() {
    // TODO Auto-generated destructor stub
}

Clock::setTime(int secs, int mins, int hrs) {
    seconds = secs;
    minutes = mins;
    hours = hrs;
}

Clock::print() {
    std::cout << hours << ":" << minutes << ":" << seconds << std::endl;
}

最佳答案

我怀疑错误消息有点长,但有助于整体理解。
话虽这么说,错误可能是由于您的定义应该是这样的:

void Clock::setTime(int secs, int mins, int hrs) { /* ... */ } 

代替:

Clock::setTime(int secs, int mins, int hrs) { /* ... */ } 

也就是说,您的情况缺少返回类型。
这同样适用于 print

关于c++ - 另一个 'member declaration not found',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42148980/

相关文章:

c++ - 为什么顺序容器同时具有 size_type 和 difference_type?

c++ - 为什么使用错误的调用约定有时会奏效?

python - pydev importerror : no module named thread, pydev升级后调试不再有效

java - 在 Eclipse 中,如何设置向下复制的键盘快捷键?

qt4 - 从 Fedora 12 上的 MinGW 交叉编译到 Windows - 控制台窗口?

c++ - 如何检查图形是否为2色?

c++ - 从 'double' 转换为 'DWORD' ,可能会丢失数据

java - 包中抛出特定异常的所有方法的列表

c++ - "abc"[0] 不是编译时常量

c++ - undefined reference .. - mingw - winxp - eclipse juno