【发布时间】:2015-01-29 18:38:24
【问题描述】:
我有一大段代码,无论我如何精简它,都会一直失败。有问题的代码是:
#include <iostream>
class Tile;
class Tile{
public:
void PRINTME();
};
void Tile::PRINTME() { std::cout << "Blergh"; }
Tile Wall;
Wall.PRINTME();
它显示以下错误消息:
(...)\MapTiles.h|11|error: 'Wall' does not name a type|
我可能对 C++ 编程比较陌生,但是在 Stackexchange 和课程教程中研究了几个小时后,我发现上面的 sn-p 应该可以运行。
这里的多个其他此类问题已使用前向声明解决,但在这种情况下,它试图将对象“Wall”作为一个类来读取。由于这个类以前相当大,我对它进行了相当大的修剪,但它仍然无法正常工作。这个例子基于Tutorialspoint C++ 类和成员函数教程。
我在 Windows 7(64 位)机器上使用 Code::Blocks 13.12 附带的 MinGw,并勾选了编译器标志 -std=c++11。
【问题讨论】: