首页 > 解决方案 > 关于通过派生类在命名空间内继承的问题

问题描述

我有一个不驻留在任何命名空间中的基类。我想从命名空间内具有相同类名的类派生。我使用范围解析运算符来做到这一点。但是,我质疑我的代码的结构方式,需要一些有关访问的指导。

我做了以下

class_B.cpp

class class_A; //Forward declaration
class_B
{
public:
  class_A * var; 
};

class_A.h

class class_A {};

我的项目.h

namespace my_namespace
{
    class class_A : public ::class_A {}; //Deriving from global class_A
    class class_D : public class_B {}; 
}

var预期的推导是什么class_D?它将代表 baseclass_A还是 namespace-derived class_A

标签: c++inheritancenamespaces

解决方案


class_D::class_B具有包含指针的基类::class_A

另一个my_namespace::class_A不干涉::class_B


推荐阅读