腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
3
回答
为什么
通过
派生类
使用
::-
operator
引用
基
类
是
不明确
的
?
所以我想知道
为什么
菱形问题
的
以下代码片段不能被编译。我知道这个问题通常是
通过
虚拟继承来解决
的
,我并不是故意这样做
的
。这段代码只是为了展示我
的
问题,即
为什么
编译器称其为二义性:所以我在struct Base中声明了两个成员变量,因为这两个子类(在本例中
是
struct )不是虚拟继承
的
,所以我将在每个派生结构中
引用
Base但是,当我从Base显式地以id_和name_为目标时,我不明白
为什么
这会是模棱两
浏览 39
提问于2020-04-28
得票数 3
1
回答
模糊呼叫运算符过载引入无关呼叫运算符奇怪地解决- clang诉gcc
、
、
、
、
考虑实现overload_two
类
的
任务,以便编译以下代码:{ [](int) { return 1; },F::
operator
()和G::
operator
()都纳入using声明
的
范围。}; gc
浏览 2
提问于2021-03-23
得票数 3
回答已采纳
1
回答
为什么
不从
基
类
赋值操作符中调用默认赋值运算符?
、
、
通过
在
基
到派生赋值操作符中
使用
动态强制转换来实现从抽象
基
类
到赋值操作符
的
派生类
,我想调用派生到派生赋值操作符。这个很管用。#include <iostream>public: derived&
浏览 7
提问于2022-10-28
得票数 0
回答已采纳
2
回答
在C++中传递参数时,继承
类
之间
的
类型转换
、
、
、
下图显示了针对这个问题
的
三个独立测试: 我想知道
为什么
正确
的
有一个错误“A”
是
'B‘
的
一个不可访问
的
基
。
为什么
g++似乎要
通过
派生类
初始化对
基
类
的
引用
(这会导致由于受保护
的
继承而产生
的
错误), 而不是像中间那样
使用
转换
浏览 0
提问于2013-01-02
得票数 3
回答已采纳
1
回答
当继承C++中
的
lambda类型时,
为什么
需要
类
内
使用
声明?
、
、
、
、
我想做一个实用工具,允许将多个lambda组合成一个重载
的
functor。在C++17中,这实际上非常简单,只需要大约5行代码:struct overload : public Funcs... { constexpr overload(Funcs&&... funcs) noexcept : Funcs{funcs}... {}我想知道
为什么
using-声明
是</em
浏览 3
提问于2021-03-26
得票数 1
1
回答
从派生
引用
到
基
引用
时出现static_cast编译器错误
、
、
、
、
在我最近发布
的
一个问题()
的
评论中,我遇到了关于如何
使用
static_cast从
派生类
型转换为
基
类型
的
另一个问题。有关此问题
的
支持文档可在以下位置找到:。我
的
主要问题
是
现在
使用
static_cast将其强制转换为我
的
派生类
中
的
基
类
是
没有问题
的
。但是,我不能执行从派生
引用
到<e
浏览 0
提问于2013-06-26
得票数 2
回答已采纳
2
回答
在指向对象
的
指针向量中取消
引用
、
、
、
、
(); return 0;其中Vector
是
模板
类
,randvec<T>()返回向量
的
引用
,save()
是
template <*> vectors;,Element.h
是
向量
的
基
类
。我说
的
全错了吗?我试图
通过
使用
指向主
类
的
指针向量,将<
浏览 24
提问于2010-06-22
得票数 2
1
回答
为什么
派生类
的
复制构造函数和overloaded=
operator
不调用各自
基
类
的
复制构造函数和overload=
operator
、
、
int p,q; base(); base
operator
=(const base &b) std::cout<<"base overloaded=
operator
\n"; q=b.q;derived copy ctor base dctor derived d
浏览 2
提问于2021-07-06
得票数 1
回答已采纳
1
回答
C++如何调用家长
的
好友函数?
、
、
有一个
基
类
和一个
派生类
。派生公共继承
基
。
基
类
实现了一个友元函数bool
operator
==(const Base& lhs,const Base& rhs) const;我正在实现
派生类
,它也需要实现bool
operator
==(constDerive& lhs,const Derive& rhs) const;现在我
的
问题
是
我不知道如何在我
的
<
浏览 3
提问于2011-09-01
得票数 3
回答已采纳
1
回答
派生类
中
的
重载运算符与
基
类
不同
、
如果我在
基
类
中重载
operator
*(float s) (并且没有将其设为虚
的
),然后在
派生类
中重载
operator
*(mat4 m),那么我能合理地期望
派生类
对两个操作符重载都做出响应吗?我假设运算符重载类似于任何其他函数:如果它不是虚拟
的
且未被覆盖,则
派生类
除了可以访问该函数/运算符
的
任何其他重载(对于
派生类
是
唯一
的
)之外,还可以访问它。当然,如果它
浏览 4
提问于2013-06-07
得票数 0
回答已采纳
4
回答
子类,赋值运算符重载?
、
如果我有以下给定
的
类
:{ const TestA &
operator
=(const int A){return *this;}这个问题假设
类
TestA和
类
TestB在变量方面具有完全相同
的
内容:赋值运算符(或任何其他运算符)是否继承?{ using TestA::
operator</
浏览 0
提问于2011-09-07
得票数 6
回答已采纳
2
回答
C++:友元函数,
派生类
、
、
我有两个
类
,
基
类
是
"Port“,
派生类
是
"VintagePort”。据我所知,如果我
使用
基
类
的
引用
或指针指向
派生类
的
对象,它会自动找到正确
的
方法,而不是
引用
或指针,而是准确地指向对象(如果方法
是
虚
的
)。在我
的
情况下,你可以看到两个
类
都有朋
浏览 0
提问于2012-07-20
得票数 0
回答已采纳
2
回答
运算符()
的
继承
、
、
当
派生类
实现void
operator
()(int,int,int)时,
为什么
下面代码示例中
基
类
中
的
void
operator
()(int)声明似乎被隐藏了,这让我感到困惑。如何让
基
类
foo中
的
operator
()(int)声明在
派生类
bar中可见?也就是说,如何修改示例以使
operator
()(int)
的
调用有效?#include <io
浏览 0
提问于2011-12-30
得票数 6
回答已采纳
2
回答
为什么
编译器没有显示错误当我有两个函数,一个将接受
基
类
和一个将
派生类
作为参数?
、
、
我有一个
基
类
和一个
派生类
,它是从
基
类
派生
的
。每个函数都有一个朋友函数,它重载
operator
+如下所示。+(int data, derived &obj);{void
oper
浏览 6
提问于2017-10-18
得票数 0
回答已采纳
1
回答
具有
基
类型/
派生类
型返回类型
的
抽象
类
中
的
纯虚函数
、
、
、
我希望让
基
类
的
每个
派生类
实现一个以
派生类
的
类型作为返回类型
的
函数(在本例中
是
后缀运算符),如下所示: virtual A
operator
++(int) =0; B
operator
++(int);这会生成return type 'A' is an abstract class类型
的
错误。据我
浏览 1
提问于2014-11-28
得票数 1
2
回答
继承基础
、
class Base{ 上面的代码可以工作,但是
为什么
我们能够创建一个
派生类
的
对象,并将其分配给
基
类
引用
此外,对象变量'b‘将能够访问Class Base
的
所有非私有变量和方法,即使它
引用
的
是
派生类
。
为什么
引用
派生对象
的
对象变量'
浏览 1
提问于2011-07-20
得票数 2
2
回答
编译器说定义
的
函数
是
虚
的
、
、
当我尝试只
使用
stackType
的
构造函数时,编译器告诉我不能
使用
,因为重载
的
==
是
纯虚拟
的
。但是,正如您所看到
的
,我在stackType中重新定义了它。请帮帮忙。(我认为操作符可以被声明为纯虚拟
的
,但我不确定。我
是
c++
的
新手)。class stackADT
浏览 0
提问于2017-10-18
得票数 0
1
回答
作为
基
类
引用
的
派生类
函数参数将导致C2678
、
、
、
我创建了“派生”
类
,即派生“
基
类
”。它正在
使用
CRTP。
基
类
包含一个一元运算符和一个二进制运算符。
派生类
正在实现这些虚拟运算符函数。
operator
!(){ return false; }为测试
派生类
的
成员操作符,设计了模板函数notf和equalf。函数notf
是
引用
一个
基
,并调用它!操作符。函数等于做类似的事情。在编译除了equalf函数之外
的
浏览 3
提问于2015-02-19
得票数 0
回答已采纳
1
回答
类型化到
基
类
、
、
我正在阅读c#
的
文档,我无法理解将类型转换到
基
类
的
概念。 与Java一样,即使
基
类
引用
可能包含对
派生类
型对象
的
有效
引用
,也不能
使用
对
基
类
的
引用
来访问
派生类
的
成员和方法。您可以
通过
引用
派生类
型隐式
引用
来
引用</em
浏览 1
提问于2016-03-28
得票数 2
回答已采纳
1
回答
虚拟函数,维基百科文章
的
解释: http://en.wikipedia.org/wiki/Virtual_function
、
在面向对象编程中,当
派生类
从
基
类
继承时,
派生类
的
对象可以
通过
指针或
基
类
类型
的
引用
而不是派生
的
类
类型来
引用
。如果所讨论
的
函数在
基
类
中
是
“虚拟
的
”,则将根据
引用
的
对象
的
实际类型调用最
派生类
的
浏览 5
提问于2014-11-18
得票数 1
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C+笔记七十九:C+继承中的类型兼容性原则
Python教程-史上最全的Python面向对象知识点疏理
Python 面向对象
Java基础之多态,动态绑定多态的代码案例,简单却很重要
当对象释放时,避免析构函数调用两次
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
云直播
活动推荐
运营活动
广告
关闭
领券