【发布时间】:2011-01-20 12:33:24
【问题描述】:
我在一个单独的头文件中定义了一个 A 类。我希望 B 类具有对存储为变量的 A 类对象的引用。
像这样:
文件:A.h
class A {
//Header for class A...
};
文件:B.h
#include "A.h"
class B {
private:
(24) A &variableName;
public:
(36) B(A &varName);
};
当我尝试使用 g++ 编译它时,出现以下错误:
B.h:24: error: ‘A’ does not name a type
B.h:36: error: expected `)' before ‘&’ token
关于我做错了什么有什么建议吗?如果重要的话,A 类是一个抽象类。
编辑:代码中的一些错别字
【问题讨论】:
-
我认为你打错了类名。 B 类有一个 B& 成员和一个构造函数 A()。
-
类定义后缺少分号。
class A { ... }; //<-- here. -
当我在 SO! :)
-
A.h 中是否包括 B.h?
-
这可能是一个错字、定义或类似问题。如果您将其输入到 stackoverflow 中并输入更多错别字,这将无济于事。尝试将代码减少到失败的最小表达式,然后复制并粘贴到问题中。
标签: c++ oop class object pass-by-reference