【发布时间】:2011-07-15 09:30:54
【问题描述】:
声明:
namespace a {
namespace b {
class Classe {
public:
Classe();
};
}
}
定义:
#include "sample.h"
namespace a {
b::Classe::Classe(){}
}
但是有了这个定义,我得到了这个错误:
错误 E2038 .\sample.cpp 4: 不能 声明或定义 'b::Classe::Classe()' 在这里
将源更改为:
#include "sample.h"
namespace a {
namespace b {
Classe::Classe(){}
}
}
如何在不更改整个代码的情况下进行编译?
这不是我的选择。其实我是Linux环境下的开发者,从没想过会再在Windows上开发。它适用于仅使用 Borland C++ 编译器的特定客户。
我在 Embarcadero 找到了this wiki page。没有多大帮助。
我放弃了。我正在做雷米说的。
【问题讨论】:
-
您在类定义中给了
Classe::Classe一个主体。我认为这只是一个声明? -
Borland C++ 不是最兼容的编译器。它有很多怪癖。这可能就是其中之一!
-
@Hans Passant:你无法想象我想如何从 Borland C++ 更改为 M$、MinGW 编译器。
-
好吧,下次你最好加倍报价。
-
汉斯·帕桑特等人。我看到很多话题,人们起初而不是帮助说它是旧的编译器。但有时我们需要它,您认为如何使用 Visual Studio 为 lpt 或 com 端口轻松编译驱动程序,用于 DOS 的 g++?或者您会说从 DOS 迁移到 Windows 更好吗?是的,它更好。但这并不容易。特别是当你有一点时间并且没有地方弄清楚如何在保护模式下使用端口时,这会更加困难......
标签: c++ compiler-errors namespaces borland-c++