rtti

    1热度

    1回答

    我正在处理小型Windows异常处理引擎,试图从系统收集最大的信息,包括C++异常RTTI。 在由MSVS 2015编译的32位VectoredExceptionHandler中,我成功可以获取std :: type_info指向正在引发的类型的RTTI的指针。它可以很容易地在((_ThrowInfo*) ExceptionPointers->ExceptionRecord->ExceptionI

    1热度

    1回答

    当编译-frtti时,有没有办法避免为整个翻译单元或某个类生成typeinfo? 也许有一种魔术#pragma或__attribute__可以覆盖命令行选项? 在此先感谢。

    2热度

    1回答

    我正在使用Delphi Seattle Update1 Win64并尝试使用RTTI提取属性。我的目标是将组件属性序列化为JSON,因为我需要在非Delphi环境中使用此信息。 我的问题是关于GetPropList为TRectangle(例子),以及为什么它返回则不能传递到GetPropValue,即性质: StrokeThickness类型tkFloat StrokeCap类型tkEnumera

    1热度

    1回答

    Rtti访问记录结构中的字段,属性和调用方法。 我用下面的记录类型,是从site type Nullable<T> = record public FValue: T; FHasValue: boolean; procedure Clear; function GetHasValue: boolean; function Get

    3热度

    1回答

    我有一个类,它有多个子类,每个子类实现自己的方法。其中一些子类具有我需要调用的通用方法。 java有没有办法知道对象是否有方法(不使用instanceof)?

    1热度

    1回答

    我想写一个规范实用程序库。 规范之一是一个TExpressionSpecification。基本上,它通过评估内部TE表达来实现规范模式。 其中一个TExpression是TPropertyExpression。它只是一个表达式,它通过Rtti的名称获取属性的值。 我以最简单的方式实现了它,但真的无法理解它为什么会向我抛出AV。 我带着调试器走了过去。所有类型都是他们应该是的。我只是不知道为什么T

    0热度

    3回答

    我很清楚反射应该只能作为最后的手段,即使您处于似乎您应该依赖的情况下,也可能意味着您的设计不好。这是一个非常强大的工具,只能极其谨慎地使用。 我也知道,的Java存储一些家政信息有关对象,所以理论上它应该是一个相对便宜的操作以确定动态类型的对象与Object.getClass()(至少便宜相比,没有这样的语言管家数据,例如C++,其中RTTI需要昂贵的vtable查找)。 这是真的吗? 难道认为坏

    1热度

    4回答

    我打算询问泛型操作符+重载,但不是在典型的“我可以操作符+泛型类型”方式。 问题是在底部 最近,我开始在C#创建矩阵类,并经过一段时间它来找我,我不能做简单的T + T! 因此,我使用Google搜索并找到了几种解决方法。 创建表达link 创建抽象类abstract class Matrix<T>{//some code}。创建“受保护的虚拟方法Add(T itemToAdd)”,然后创建 操作

    2热度

    1回答

    我知道模板是编译时,而typeinfo相关的是运行时,但我想知道是否可以实现我的特定任务。 我有一个工厂方法使用模板来创建特定类型的对象;我还有一个预加载器(从磁盘读取数据),它决定了要创建什么类型的对象,但实际上并没有创建它 - 这是创建者的责任,并且是按需执行的。 void Creator::Spawn(Preloader* pl) { std::unordered_map<siz

    3热度

    1回答

    我的项目目前使用-fno-rtti来编译,以防止g++在二进制文件中生成RTTI数据。现在我在某个地方需要RTTI。是否有可能随机化RTTI数据,这样名字就不会被所有人读取?使用g ++/clang。