rtti

    1热度

    1回答

    我基于typeid的,有时念叨类型确定在运行时,我尝试下面的代码,当我们把在特定类型的typeid到 #include <iostream> #include <vector> #include <typeinfo> typedef std::vector<int> Vector; template <class T> void foo(T &v) { cout << ty

    0热度

    1回答

    我有一段代码使用RTTI作为条件选择 #include <iostream> #include <vector> #include <typeinfo> #include <complex> #include <algorithm> using namespace std; typedef complex<int> data; typedef std::vector<data>

    9热度

    3回答

    有人说the use of dynamic_cast often means bad design and dynamic_cast can be replaced by virtual functions 为什么使用dynamic_cast认为是不好的设计? 假设我有我的函数名func(Animal* animal, int animalType),在FUNC实现是这样的: bool func(

    5热度

    5回答

    比方说,我有一个类家族所有实现相同的接口,也许是调度: class Foo : public IScheduler { public: Foo (Descriptor d) : IScheduler (d) {} /* methods */ }; class Bar : public IScheduler { public: Bar (Descriptor

    0热度

    1回答

    我编译了我的应用程序项目的发布版本。当我用二进制编辑器查看我编译的最终exe文件时,我可以看到我自己创建的对象的所有类名,例如:TPolygon,TRectangle等等,作为exe文件中的二进制文本数据。 我怎样才能从exe中删除这些信息。我尝试删除在dpr中使用禁用RTTI: {$WEAKLINKRTTI ON} {$RTTI EXPLICIT METHODS([]) PROPERTIES(

    0热度

    1回答

    我有一个类似的代码(简化以帮助说明问题) class a { protected: int m_x; public: a(int x):m_x(x){}; ~a(){}; virtual int GetX()=0; } class b:public a { public:

    2热度

    1回答

    链接到原始问题Is it possible to get the index of class property?和雷米勒博和RRUZ program Demo; {$APPTYPE CONSOLE} uses System.SysUtils, Winapi.Windows, System.Rtti, System.TypInfo; type TMyCla

    1热度

    1回答

    当我编译一个C++二进制使用gcc与选项,以保持符号的信息,并且当我运行下面的命令它列出了类所属类别 objdump -Ct ExecName | grep typeinfo 当我编译与剥离选项-s和运行以下它说没有符号。 但我担心RTTI信息正在其他地方举行。 我希望所有的类名都不要在二进制文件中显示。我想确认剥离符号是否实际上最终会删除RTTI信息。 在Blackhat的演示中,他们展示了

    7热度

    1回答

    我们可以找到一个使用Property或ObjectRTTI,我们可以搜索某个function或procedure(从对象而不是作为一个method但从unit)加载到内存中只知道它的名字? 如果可以,是否可以执行发送它的参数?

    3热度

    1回答

    的保护事件 想象,你想自己的事件过程分配: procedure TSuperObject.DoSomething(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin ShowMessage('Yes, I am doing'); end; 任何TWinControl形式。一般来说