Inheritance: 'A' is an inaccessible base of 'B'
'boost::enable_shared_from_this<net::Session>' is an inaccessible base of 'net::Session'BOOST_ASSERT( p.get() == this );
在使用enabel_shared_from_this是遇到报错
研究了一下是继承的时候没有采用public继承的原因
https://blog.csdn.net/crazyhacking/article/details/8013458
这个文章指明private/protected继承时A的指针不能指向B
不过感觉没理解,如果看这个文章c++三种继承方式public,protect,private
可能是protected继承使得this指针对子类不可访问。接下来进行测试
额,很奇怪,测试结果好像没啥问题,测试了几种可能性:
在protected继承下
1.Base使用了this的函数不能被Derived调用 X
2.Base的this和Derived*不能做==操作 X
转载于:https://www.cnblogs.com/Jacket-K/p/10081498.html
Inheritance: 'A' is an inaccessible base of 'B'相关推荐
- ‘A’ is an inaccessible base of ‘B’解决方案
引言 最近在写代码时突然遇到这个问题 且CSDN上没有找到解答 遂在解决问题后发布一篇博客记录 同时帮助有同样问题的朋友 首先来看一段代码 namespace NS{class Quote{};voi ...
- Public Private Protect Inheritance and access specifiers
In the previous lessons on inheritance, we've been making all of our data members public in order to ...
- Multiple Inheritance Considered Useful
转 Multiple Inheritance Considered Useful 这篇博文较长,需要耐心看完 Multiple Inheritance Considered Useful By Jac ...
- Effective C++: 06继承与面向对象设计
32:确定你的public继承塑模出is-a关系 以C++进行面向对象编程,最重要的一个规则是:public继承表示的是"is-a"(是一种)的关系. 如果令class D以pub ...
- C2248编译错误的原因和解决--VC6向VC7.1迁移真是累死人,N多编译错误
把以前VC6先写好的类加入VC7中,编译时竟然错误多到编译器无法接受而停止,hooooo.真的好烦,要是有个工具修改外加的.h和cpp文件就好了... 遇到最多的是C2248编译错误,才发现VC7提升 ...
- 如何判断derived-to-base conversion是否legal
我们知道,在类内的access specifier public .protected.private都只是为了限定用户程序对类内的访问权限,而在继承list中的access specifier则是影 ...
- 派生类类型可以转换为基类类型,反之则不行
派生类的对象都含有基类对象作为其一部分,我们可以将指向派生类型的引用转换为指向它的基类型的引用,像转换指针一样,我们可以用派生类的对象初始化或赋值基类对象,反之却不行.class base{ publ ...
- C++的类继承与类模板
类继承是面向对象编程中很重要(也是很难)的内容,其能有效地提高代码复用水平,提高开发的效率. 目录 基本概念 公有继承 私有继承.保护继承 包含 多重继承 类模板 基本概念 继承的种类与特点 C++中 ...
- Solidity的合约
Solidity中的Contracts与面向对象语言中的类相似.它们包含状态变量和函数中的持久数据,可以修改这些变量.在不同的合约(实例)上调用函数将执行EVM函数调用,从而切换上下文,使得状态变量不 ...
- 关于warning: direct base 'A' inaccessible in 'D' due to ambiguity的一些讨论
c++ primer习题中发现的问题,习题是18.13. 这个问题很久前有过讨论,不过没有得出正确结论,原贴. 先上代码: struct A {virtual ~A() {} };struct B : ...
最新文章
- DVWA安装——一个菜鸟的入门教程
- spring(16)------spring的数据源配置
- springboot创建parent_理解spring-boot-starter-parent
- 程序员误区1:软件开发职业是青春饭
- 安卓应用安全指南 5.5.3 处理隐私数据 高级话题
- python从入门到大神---4、python3文件操作最最最最简单实例
- MFC中Socket网络通讯
- 2019-03-13
- Ubunbtu18.04报错:No rule to make target ‘kernel/include/linux/netfilter/xt_CONNMARK.h‘
- ffmpeg代码实现自定义decoder
- 雷霆战机单机老版本_雷霆战机单机版
- MATLAB:快速傅里叶变换(FFT)
- 计算机辅助绘图包括,计算机辅助绘图实用教程
- 影响力最大化 IC模型+贪心算法
- 技术人攻略访谈三十六-马鉴:玩Flash十五年,养出一只“神经猫”
- 彼得林奇PEG价值选股策略(附源码入口)
- python词云背景图_python数据分析可视化,制作你想要的背景图词云
- php ajax 考试倒计时,基于Ajax技术实现考试倒计时并自动提交试卷
- Eclipse+ GNU ARM Eclipse Plug-in+ Sourcery G++ Lite Edition for ARM+OPENCD+Jlink的开源开发环境
- npm error: Maximum call stack size exceeded
热门文章
- android感应不了夜神模拟器,夜神模拟器使用(检测不到)
- 惠普触控板使用指南_手势操作更简便 笔记本触控板使用简介
- Decision Tree决策树
- dht11温湿度传感器工作原理引脚功能电路接线图
- excel求回归直线方程的公式_求回归直线方程的三种方法
- [linux shell]比较运算符小坑(unary operator excepted 期望的一元运算符错误)
- 计算机键盘字母排列依据,键盘上的26个字母排序有什么规律吗?是怎么定的?...
- ps怎么抠地图线路_怎样在PS里画地图的边界线?
- python求n的阶乘并输出_python求n的阶乘
- 如何解决CPU过热100度自动关机