当前位置: 首页 > 知识库问答 >
问题:

C++如何指向类中的私有继承类对象

袁泓
2023-03-14

我正在学习有关类继承的知识,我想知道如何创建一个指向由另一个类私下继承的类的指针?下面我包括了一个简单的例子。非常感谢那些帮助回答这个问题的人。

class A: private std::string
{
public: 
A(){}
~A(){}

void func1() 
{
// I want a pointer that points to the std::string object. Then I will use that pointer in this function
}
};

共有1个答案

庞瀚
2023-03-14

简单如

std::string* p = this;

由于 派生自 ,因此 可以隐式地转换为 (当然,基类实际上是可以访问的)。

 类似资料:
  • 本文向大家介绍C/C++ 公有继承、保护继承和私有继承的对比详解,包括了C/C++ 公有继承、保护继承和私有继承的对比详解的使用技巧和注意事项,需要的朋友参考一下 C/C++ 公有继承、保护继承和私有继承的区别    在c++的继承控制中,有三种不同的控制权限,分别是public、protected和private。定义派生类时,若不显示加上这三个关键字,就会使用默认的方式,用struct定义的类

  • 本文向大家介绍C++ 中私有继承的作用,包括了C++ 中私有继承的作用的使用技巧和注意事项,需要的朋友参考一下 C++ 中私有继承的作用 私有继承的 第一个规则:和公有继承相反,如果两个类之间的继承关系为私有,编译器一般不会将派生类对象转换成基类对象。 第二个规则: 从私有基类继承而来的成员都成为了派生类的私有成员,即使它们在基类中是保护或公有成员。 私有继承的含义:私有继承意味着 "用...来实

  • 本文向大家介绍详解C++编程中的私有继承和公有继承,包括了详解C++编程中的私有继承和公有继承的使用技巧和注意事项,需要的朋友参考一下 C++类的私有继承 在声明一个派生类时将基类的继承方式指定为private的,称为私有继承,用私有继承方式建立的派生类称为私有派生类(private derived class ), 其基类称为私有基类(private base class )。 私有基类的公用成

  • 我想用PHP在我的简单ORM中实现一个钩子系统: 这会导致一个致命错误: 致命错误:调用私人方法付款::before_save()从上下文'记录'中 有道理。 我可以将范围更改为public,但这似乎很难看:在保存()之前,除了支付之外,没有人与

  • 问题内容: 需要对私有变量和继承有更多的了解。较早之前,我的理解是在类中是否有字段,并且当我继承该类时,不受访问(私有变量)限制的字段将存在于继承的类中。但是,如果有公共的g / setter方法,我可以在基类中使用私有变量。 我怎么能想象一个基类中的私有变量? 问题答案: 结果将为10。类A中的私有字段a是B的继承类,但B无法直接访问它。仅通过使用在类A中定义的公共/默认/受保护的访问器方法。B

  • 我有一个父类,它定义了链表方法(返回“this”的方法)的集合。我想定义多个子类,这些子类包含自己的链式方法,但也“重写”父方法,以便返回子类的实例而不是父类。 我不想在每个子类中重复相同的方法,这就是为什么我有一个父类,其中包含所有子类共享的方法。谢谢

  • 本文向大家介绍浅谈C# 类的继承,包括了浅谈C# 类的继承的使用技巧和注意事项,需要的朋友参考一下 继承 一个类可以继承自另一个类。在 C#中,类与类之间只存在单一继承。也就是说,一个类的直接基类只能有一个。当类与类之间实现继承的时候,子类可以将它的直接基类的所有成员当做自己的成员,除了类的静态构造方法、实例构造方法和析构方法。但是,虽然基类的所有成员都可以当做子类的成员,但是如果基类的成员设置了

  • 问题内容: 是否有理由要声明类声明object? 我刚刚找到了执行此操作的代码,但找不到很好的理由。 问题答案: 是否有理由要声明类声明object? 在Python 3中,除了Python 2和3之间的兼容性之外,没有任何理由。在Python 2中,原因很多。 Python 2.x故事: 在Python 2.x(从2.2开始)中,有两种类型的类,取决于是否存在object作为基类的类: “经典”