腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
为
虚拟
基
类
的
虚拟
基
类
调
用了
错误
的
构造
函数
c++
、
c++11
、
inheritance
、
multiple-inheritance
、
virtual-inheritance
我在一个非常复杂
的
类
结构
的
构造
器上遇到了一个问题,这个
类
结构分布在几个文件中。每个
类
都有一个不带参数
的
公共默认
构造
器和一个带参数
的
受保护
构造
器。任何派生
类
的
每个
构造
函数
都使用参数调用其父
类
的
受保护
构造
函数
。下面的示例对于结构中
的
所有派生
类
都
浏览 7
提问于2021-01-09
得票数 0
回答已采纳
1
回答
子
构造
函数
使用祖父母
构造
函数
。
c++
、
inheritance
下面的
类
层次结构具有一个
虚拟
GrandParent和非
虚拟
Parent和Childprotected:}; public:}; 它们
的
构造
函数
嵌套如下似乎Child
构造
函数
被忽
浏览 3
提问于2021-10-18
得票数 3
回答已采纳
3
回答
对于C++
基
类
来说,
为
构建后
的
虚拟
调用存储'this‘
的
值安全吗?
c++
、
virtual-functions
在基本
构造
函数
中
的
C++中,'this‘
的
实际类型是' Base’而不是‘派生’,因此调用
虚拟
函数
是不安全
的
。但是,
基
类
在基本
构造
期间将值 'this‘传递给回
调
对象是否安全,该回
调
对象将在
构造
完成后
的
将来调用
虚拟
函数
。
浏览 1
提问于2016-10-18
得票数 5
回答已采纳
4
回答
从
构造
函数
调用
虚拟
函数
和纯
虚拟
函数
c++
、
constructor
、
compiler-errors
、
virtual-functions
、
dynamic-binding
当我从基本
构造
函数
调用
虚拟
函数
时,编译器不会给出任何
错误
。但是当我从
基
类
构造
函数
调用纯
虚拟
函数
时,它会产生编译
错误
。}; { base *bptr = &d;} 这里可以看到,纯
虚拟
函数
有一个定义我
浏览 1
提问于2011-12-27
得票数 5
回答已采纳
2
回答
菱形子问题:侧分支中
的
非多重继承仍然需要
类
构造
函数
c++
、
inheritance
、
multiple-inheritance
、
diamond-problem
当我试图用一种常见
的
方式--使用
虚拟
继承--来“解决”通常
的
钻石问题时,出现了一个奇怪
的
问题: / \* both virtual \ /然而,我
的
基
类
A没有默认
构造
函数
然而,当我试图将一个
类
E添加到这个菱形中作为C继承时 / \* both virtual \ / \仍然需要在E
构造
浏览 3
提问于2010-07-19
得票数 2
回答已采纳
2
回答
继承层次结构中
的
析构
函数
排序
c++
、
inheritance
、
polymorphism
、
virtual-destructor
如果我有以下层次结构:
类
F(最派生<em
浏览 0
提问于2013-02-28
得票数 1
回答已采纳
1
回答
虚拟
基
类
初始化难题
c++
、
visual-c++
、
virtual
InputStream& message) EventType event(message); }我完全知道,大多数派生
类
都应该初始化
基
类
SuperEvent&) { ... }但是我得到了"error C2512:没有合适
的
默认
构造
函数
可用<em
浏览 4
提问于2014-04-22
得票数 3
回答已采纳
2
回答
虚拟
基
类
与继承
c++
derived class\n";}; { return 0;有一个问题:-当创建d1obj时,控件首先到达
基
类
构造
函数
,然后转到派生
类
构造
函数
?或者是相反
的
情况:它首先到达派生
类
构造
函数
,发现它有
基
类
,因此控件转到
基
类
中<em
浏览 3
提问于2017-04-05
得票数 0
3
回答
单一
虚拟
继承
c++
、
virtual-inheritance
我知道
基
类
的
虚拟
继承在多个派生
类
之间创建了一个公共
的
共享
基
类
,从而解决了DDD问题。如果我
的
基
类
只有一个派生
类
,当我
虚拟
地或非
虚拟
地继承
基
类
时,有区别吗?基本上,我试图理解查询中提供
的
解释,其中Usage_lock
基
类
实际上是继承
的
,以防止
浏览 1
提问于2011-09-11
得票数 4
1
回答
使用
虚拟
继承
的
类似乎允许
基
类
构造
函数
覆盖另一个
基
类
的
成员
c++
、
gcc
、
clang
、
virtual-inheritance
、
memory-layout
我对包含虚
基
的
对象
的
内存布局不够熟悉,无法理解为什么clang和gcc都不能正确地编译以下代码。这是一个学术练习,所以请原谅
构造
函数
中memset()
的
轻率。pedantic -std=c++17编译时,两个编译器都会生成以下程序集,而不会出现任何警告: xor eax, eax在memset调用中将C更改为不
虚拟
继承, here当C
虚拟
地/非
虚拟
地从B派生时
浏览 13
提问于2019-01-09
得票数 4
1
回答
继承层次结构:
构造
函数
&析构
函数
执行序列
c++
、
inheritance
、
constructor
、
destructor
在这里,第25.14节说 \ / | |每个
类
都有一个C‘’tor和
虚拟
d‘’tor。但是,根据引用,应该首先执行
虚拟
基
类
构造<
浏览 6
提问于2011-08-16
得票数 6
回答已采纳
1
回答
我缺少什么来使这个初始化应用于多重继承?
c++
、
class
、
inheritance
、
initialization
、
multiple-inheritance
我学到了更多关于继承
的
知识,我遇到了这个问题。我正在尝试初始化从多个方向继承
的
继承属性,或者不管您如何描述它。 继承结构
为
:A是根,C是根,E继承A和C,F继承,A,C和E。A和C都有一个名为m_x
的
成员,我将m_x标记为实际属性,x标记为具有编译时多态
的
getter/setter
函数
。我知道这可能不好,但这只是我
为
这个问题做
的
一个例子。E和F没有自己
的
成员,只有继承
的
成员。我想用以下值初始化一个名为f<e
浏览 7
提问于2022-11-17
得票数 1
1
回答
钻石问题C++:钻石调用
的
派生
类
默认
构造
函数
c++
、
diamond-problem
因此,作为我
的
程序
的
公共API
的
一部分,我公开了
类
D,这样用户就可以从
类
D继承来创建自己
的
类
。然而,D
类
是致命钻石
的
尖端,我遇到了一个问题,用户
的
类
正在调用
类
A
的
默认
构造
函数
,而不是所需
的
参数化
构造
函数
。AB C D
浏览 9
提问于2021-11-13
得票数 0
回答已采纳
1
回答
继承
虚拟
基
类
的
构造
函数
c++
、
c++11
、
gcc
、
g++
、
virtual-inheritance
虚拟
基
类
是在大多数派生
类
中初始化
的
,因此我
的
猜测是继承
基
类
的
构造
函数
也应该工作: base(int) {} struct derived: virtual base这是GCC
的
错误
吗?
浏览 2
提问于2015-10-06
得票数 6
回答已采纳
2
回答
纯虚
函数
调用
c++
、
python
、
boost-python
、
pure-virtual
我使用boost.python来编写用c++编写
的
python模块。我有一些带有纯
虚拟
函数
的
基
类
,我导出了这样
的
函数
:{}; def GetPosition(self):obj.GetPosition() Run
浏览 5
提问于2011-04-16
得票数 6
回答已采纳
1
回答
不执行参数化
基
类
构造
函数
的
中间
类
的
存在
c++
、
constructor
、
virtual-inheritance
我
的
守则:{ Parent(int x) { coutGrandChild G;}default Parentdefault Child2我知道,这里大多数派生
类
调用父
类
默认
构造
函数
但是为什么Chil
浏览 1
提问于2015-08-14
得票数 1
回答已采纳
2
回答
派生
类
特定
函数
,在重写
的
虚拟
函数
中,由
基
类
指针调用。
c++
、
class
、
pointers
、
polymorphism
我理解为什么在将派生
类
分配给
基
类
指针时只能调用
基
类
函数
。根据我对
虚拟
表
的
理解,原因是因为只有
基
类
虚拟
函数
指针被放入
虚拟
表中,因此只能调用它们,但是如果
基
类
指针指向派生
类
,则在调用派生
类
构造
函数
时,
基
类
虚拟
浏览 0
提问于2013-08-01
得票数 0
回答已采纳
1
回答
关于C++标准中
的
12.7p3段,我有以下问题
c++
、
c++11
、
constructor
、
standards
、
implicit-conversion
结构A{ };结构B:
虚拟
A{ };结构C:B{ };结构D:
虚拟
A{ D(A*);};结构X{ X(A*);};结构E: C,D,X{ E():D(this),//未定义:从E*向上转换到A* //可以使用路径E* - D* - A* /但D不是
构造
// D((C*)this),//定义: // E* - C*定义是因为E()已经启动/和C* - A*定义是因为// C完全
构造
了X(
浏览 0
提问于2013-04-30
得票数 10
2
回答
为什么没有用户
的
类
提供cp/mv,并且具有
虚拟
函数
,但没有
虚拟
基
,而没有"trival cp/mv“?
c++
、
c++11
、
language-lawyer
按照标准: -
类
X没有
虚拟
函数
(10.3),也没有
虚拟
基
类
(10.1),并且-对于每个
类
类型(或其数组)
的
X
的
非静态
浏览 1
提问于2018-03-25
得票数 2
回答已采纳
2
回答
由派生
类
的
构造
函数
调用
的
函数
,该
函数
在
基
类
中不应该是纯
虚拟
的
。
c++
、
constructor
、
pure-virtual
我有一个
基
类
和许多派生
类
。它不应该在
构造
函数
中调用
虚拟
函数
。 但是我希望reset()是
基</em
浏览 0
提问于2019-06-25
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
手把手教你:如何把C+的源程序改写成C语言
C+笔记八十:继承中的对象模型
重温C与C+之构造函数
为什么Python类语法应该不同?
C+笔记七十九:C+继承中的类型兼容性原则
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券