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。