【发布时间】:2013-12-23 20:56:44
【问题描述】:
我有两个头文件。 decimal.h 和 integer.h 各自包含各自的类。 我想写这样的东西。
//integer.h
#ifndef INTEGER_H
#define INTEGER_H
#include "decimal.h"
class Integer
{
...
operator Decimal();
}
#endif
//decimal.h
#ifndef DECIMAL_H
#define DECIMAL_H
#include "integer.h"
class Decimal
{
...
operator Integer();
}
#endif
给我带来麻烦的是,由于它们包含了每个,它在 Visual Studio 中的行为很奇怪,并且会产生奇怪的编译器错误。有没有办法解决这个问题?
【问题讨论】:
-
从来没有一个好的设计可以做到这一点。尝试隔离它们。
-
您应该在问题中添加确切的错误消息,因为 Visual Studio 中的许多内容都可能被视为“奇怪”...
-
@badgerr - 不管你的主观判断如何,这里的问题是清楚的,这种错误产生的错误信息往往是“奇怪的”,即使是你最喜欢的编译器。
标签: c++