腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
3
回答
void
的
dynamic_cast
*
c++
我需要使用动态强制转换
void
*....它给出错误不能转换
void
*,我不能使用下面的代码...因为它是一种委托机制delegateClass *delegate =
dynam
浏览 0
提问于2011-07-21
得票数 4
回答已采纳
1
回答
关于非多态类型
的
Dynamic_cast
c++
、
multiple-inheritance
、
dynamic-cast
、
vtable
、
vptr
我可以理解为什么
dynamic_cast
在这种情况下会起作用: virtual ~A() = default; virtual ~B() = default; if(auto p =
dynamic_cast
: virtual ~A() =
浏览 2
提问于2018-09-04
得票数 7
回答已采纳
7
回答
处理不相关类型
的
动态类型转换
c++
、
inheritance
#include <iostream> class X{ virtual
void
f(){} public: }; { Y* y =
dynamic_cast
<Y*>(x); //A // Y* y =
浏览 0
提问于2010-10-11
得票数 12
2
回答
如果我已经检查了类型,为什么不使用static_cast而不是
dynamic_cast
呢?
c++
、
casting
、
dynamic-cast
、
static-cast
下面的代码检查
来自
p指针
的
对象是否
来自
Student类型,如果是这样,则检查
dynamic_cast
。if (strstr (type id (∗p).name(), "Student")!=NULL){ Studen
浏览 4
提问于2021-01-18
得票数 0
3
回答
两个不同
的
继承指针地址如何相等?
c++
、
pointers
、
inheritance
在阅读了之后,我确信这是行不通
的
。你能给出一个类似的小例子,说明==会导致错误吗?
浏览 6
提问于2016-04-08
得票数 4
回答已采纳
5
回答
来自
“
dynamic_cast
*”
的
空
c++
、
rtti
、
void-pointers
、
dynamic-cast
根据
的
说法,
void
*没有RTTI信息,因此从
void
*转换是不合法
的
,这是有意义
的
。你能澄清一下这个问题吗?
浏览 3
提问于2010-11-09
得票数 40
回答已采纳
2
回答
reinterpret_cast充当
dynamic_cast
c++
、
visual-c++
我
的
代码是这样
的
:{ ...根据堆栈跟踪,它是从__RTDynamicCast中提出
的
,据我所知,这是
dynamic_cast
的
MSVC实现。这个异常应该发生在
dynamic_cast
中,因为指针
来自
外部库(可能没有/GR编译),并且指向带有几个双倍
的
结构。但我不认为reinterpret_cast会这样。难道它不应该改变指针
的</
浏览 2
提问于2013-12-10
得票数 2
回答已采纳
1
回答
我如何才能形成对非期末课程
的
“最后”引用?
c++
、
c++11
、
inheritance
、
polymorphism
、
final
final是一个很好
的
关键字。它允许我防止从类继承。它还允许编译器在调用虚拟函数或访问虚拟库时跳过运行时调度机制。我
的
动机是像optional和vector这样
的
类。但是,我肯定地知道,这个引用实际上是一个T,而不是更多
浏览 2
提问于2020-01-27
得票数 2
1
回答
失败
的
和格式错误
的
强制转换
c++
、
casting
你能解释一下ill-formed cast和failed cast之间
的
区别吗?例如:class B { virtual
void
g(); }; D d; A* ap = &d;
浏览 1
提问于2014-08-03
得票数 0
4
回答
非成员函数
的
C++虚拟继承
c++
、
inheritance
、
virtual
、
dynamic-cast
来自
于Java/C#背景,需要一些帮助来理解C++中正在发生
的
事情. int x; A(int x) : x(x){} cout << x + 2*y << endl;}; B b(5); a.f(10);
浏览 0
提问于2013-07-31
得票数 0
回答已采纳
3
回答
为类实现标识符或使用
dynamic_cast
c++
、
inheritance
、
polymorphism
、
dynamic-cast
我
的
问题与有关。我有一个性能关键代码,它包含在特定位置处理
来自
派生类
的
特定函数,其中只有基本指针可用。检查我们所拥有的派生类
的
最佳方法是什么?<< std::endl; }}; {
dynamic_cast
浏览 7
提问于2015-12-09
得票数 1
回答已采纳
4
回答
如何正确使用
dynamic_cast
进行下线播放?
c++
、
dynamic-cast
、
downcast
我对
dynamic_cast
感到非常困惑。
来自
C++ Primer和(规则5)
的
材料不能帮助我理解。(这本书比这本书难得多,我把它们都看得很仔细)
dynamic_cast
<type*>(e) (基类具有虚拟函数
浏览 0
提问于2018-09-28
得票数 7
8
回答
C++:将整数转换为指针
的
安全方法
c++
、
casting
、
dynamic-cast
、
reinterpret-cast
我需要将包含地址
的
整型类型转换为实际
的
指针类型。我可以按如下方式使用reinterpret_cast:但是,这不会执行任何运行时检查,以查看有问题
的
地址是否实际包含我想知道首先转换为空*(使用reinterpret_cast),然后对结果使用
dynamic_cast
是否有任何好处。如下所示:
void
*p = reinterpret_cast<
void
*&
浏览 2
提问于2009-12-02
得票数 1
回答已采纳
2
回答
处理不同派生类对象之间
的
交互
c++
、
inheritance
、
downcast
、
mediator
我有一个程序,其中有指向基类
的
指针向量,其中存储多个不同派生类
的
实例。所有这些对象都以不同
的
方式交互,这取决于它们
的
类型,我想以一种聪明
的
方式实现这些交互。我更希望有一个中介类,在那里尽可能多地保存与这些交互相关
的
代码。Game::play(gestures[i], gestures[j]); } } 有没有一种简单
的
方法可以在没有编译时知识
的
情况下实现下拉式转换,哪些派生类是有问题
的<
浏览 4
提问于2020-11-16
得票数 0
回答已采纳
1
回答
C++
dynamic_cast
一个模板类到另一个模板
c++
我正在使用模板类A<widget_type>,我想知道是否可以使用
dynamic_cast
<A<another_type>*>(A<widget_type>*)。编辑:我必须编写一个程序,其中一个数组包含A<B*>对象,但A<B*>对象可能
来自
A<C*>或A<D*>。我需要在运行时检查A<B*>是否可以转换为所需
的
模板类。出于这个原因,我不能使用强类型,因为A<B*>对象可能
来自
A<E*>对象
浏览 73
提问于2020-12-12
得票数 1
回答已采纳
1
回答
如何在没有精确类型信息
的
情况下从
void
*转换到虚拟基类?
c++
、
casting
、
multiple-inheritance
、
virtual-inheritance
(除了未定义
的
行为。)如果没有精确
的
类类型信息,我应该如何将它们转换为基类?在你把问题标记为重复或回答之前,请先阅读问题。基类是虚拟
的
。这是可怕
的
钻石问题!编辑2:在将D1和D2嵌入到
voi
浏览 1
提问于2017-03-14
得票数 5
4
回答
从基指针向下转换为模板化
的
派生类型
c++
、
inheritance
、
metaprogramming
、
dynamic-cast
、
downcast
我有以下层次结构:{ virtual ~base(){}}; class derived1 : public base virtual
void
foo() {};class derived2 :public base virtual
void
foo() {};现在给出一个指向base
浏览 0
提问于2012-03-05
得票数 7
2
回答
用于验证类型
的
动态转换
c++
、
casting
、
dynamic-cast
为了避免X情况,我试图验证
void
*指针强制转换是否有效。class A virtual
void
foo(){}class B virtual
void
bar(){} A* ptr2 = reinterpret_cast<A*> (createB()); ptr =
dynamic_cas
浏览 0
提问于2017-06-16
得票数 2
回答已采纳
2
回答
为什么在使用memset用零填充对象之后,我在
dynamic_cast
上得到一个异常
c++
、
inheritance
、
memcpy
、
dynamic-cast
、
memset
我在
dynamic_cast
中得到了这个奇怪
的
运行时异常,但是只有当我使用memset填充用零转换
的
对象,或者只是使用memcpy将一些数据复制到其中时,我才会这样做。下面是一个生成异常
的
示例。class Basepublic:}; {
void
Base* base_ptr = &derived; memset(base_pt
浏览 4
提问于2020-05-28
得票数 2
1
回答
派生类中
的
工厂方法
c++
、
polymorphism
、
factory-pattern
、
dynamic-cast
我有两种消息:MessageA和MessageB,它们都
来自
包含纯虚拟方法std::string toString()
的
抽象类IMessage。我可以看到完成这项任务
的
两种方法: class MessageFactory IMessage* fromString) { ... } { ..
浏览 1
提问于2013-07-01
得票数 0
回答已采纳
点击加载更多
相关
资讯
编程笔记:int main和 int main(void)的区别?
Void与Sony Pictures合作,推出新的VR体验店
Void IDE,Cursor 的开源替代品,发布测试版
初创公司Void宣布与索尼影视合作 推出新的VR体验
Void正在添加基于迪士尼和漫威属性的全新VR体验
热门
标签
更多标签
云服务器
对象存储
ICP备案
云点播
腾讯会议
活动推荐
运营活动
广告
关闭
领券