C++ 关于通过派生类在命名空间内继承的问题
我有一个基类,它不在任何名称空间中。我希望从命名空间中具有相同类名的类派生。我使用范围解析操作符来实现这一点。但是,我对我的代码的结构方式提出了质疑,需要一些关于访问的指导 我已经做了以下工作 B.cpp级C++ 关于通过派生类在命名空间内继承的问题,c++,inheritance,namespaces,C++,Inheritance,Namespaces,我有一个基类,它不在任何名称空间中。我希望从命名空间中具有相同类名的类派生。我使用范围解析操作符来实现这一点。但是,我对我的代码的结构方式提出了质疑,需要一些关于访问的指导 我已经做了以下工作 B.cpp级 class class_A; //Forward declaration class_B { public: class_A * var; }; A.h类 class class_A {}; 我的计划 namespace my_namespace { class class
class class_A; //Forward declaration
class_B
{
public:
class_A * var;
};
A.h类
class class_A {};
我的计划
namespace my_namespace
{
class class_A : public ::class_A {}; //Deriving from global class_A
class class_D : public class_B {};
}
D类
的var
的派生是什么?它将表示基类class\u A
,还是派生的命名空间class\u A
?class\u D
具有基类::class\u B
,其中包含::class\u A
上的指针
另一个
my_namespace::class_A
不会干扰::class_B
您注意到了,class_A*var代码>范围是私有的,不是吗?谢谢,我已经修好了。谢谢。有没有办法在命名空间内强制使用class\u D::class\u B
指针来使用my\u命名空间:class\u a
指针而不是::class\u a
?您可能已经模板化了class\u B
,以允许使用:class\u a
或my\u命名空间:class\u a
。。。或任何其他类别。无法强制使用派生类的命名空间中的类\u A
。