IDiaSymbol::get_undecoratedNameEx
擷取 C++ 裝飾 (連結) 名稱的部分或所有未裝飾名稱。
語法
HRESULT get_undecoratedNameEx(
DWORD undecorateOptions,
BSTR* pRetval
);
參數
undecoratedOptions
[in] 指定旗標的組合,以控制傳回的內容。 如需特定值及其用途,請參閱「備註」一節。
pRetVal
[out] 傳回 C++ 裝飾名稱的未裝飾名稱。
傳回值
如果成功,則會傳回 S_OK
;否則,會傳回 S_FALSE
或錯誤碼。
注意
S_FALSE
傳回值表示屬性不適用於符號。
備註
undecorateOptions
可以是下列旗標的組合:
注意
旗標名稱未定義於 DIA SDK,因此您必須將宣告新增至程式碼或使用原始值。
旗標 | 值 | Description |
---|---|---|
UNDNAME_COMPLETE | 0x0000 | 啟用完全取消裝置。 |
UNDNAME_NO_LEADING_UNDERSCORES | 0x0001 | 從 Microsoft 擴充關鍵字中移除前置底線。 |
UNDNAME_NO_MS_KEYWORDS | 0x0002 | 停用 Microsoft 擴充關鍵字的擴充。 |
UNDNAME_NO_FUNCTION_RETURNS | 0x0004 | 停用主要宣告的傳回型別擴充。 |
UNDNAME_NO_ALLOCATION_MODEL | 0x0008 | 停用宣告模型的擴充。 |
UNDNAME_NO_ALLOCATION_LANGUAGE | 0x0010 | 停用宣告語言規範的擴充。 |
UNDNAME_RESERVED1 | 0x0020 | 保留。 |
UNDNAME_RESERVED2 | 0x0040 | 保留。 |
UNDNAME_NO_THISTYPE | 0x0060 | 停用 this 類型上的所有修飾詞。 |
UNDNAME_NO_ACCESS_SPECIFIERS | 0x0080 | 停用成員的存取規範擴充。 |
UNDNAME_NO_THROW_SIGNATURES | 0x0100 | 停用函式和函式指標的「擲回簽章」擴充。 |
UNDNAME_NO_MEMBER_TYPE | 0x0200 | 停用 static 或 virtual 成員的擴充。 |
UNDNAME_NO_RETURN_UDT_MODEL | 0x0400 | 停用 UDT 傳回的 Microsoft 模型擴充。 |
UNDNAME_32_BIT_DECODE | 0x0800 | 取消裝置 32 位元裝飾名稱。 |
UNDNAME_NAME_ONLY | 0x1000 | 只取得主要宣告的名稱;只會傳回 [scope::]name。 展開範本參數。 |
UNDNAME_TYPE_ONLY | 0x2000 | 輸入只是類型編碼;撰寫抽象宣告子。 |
UNDNAME_HAVE_PARAMETERS | 0x4000 | 真實的範本參數可供使用。 |
UNDNAME_NO_ECSU | 0x8000 | 隱藏 enum/class/struct/union。 |
UNDNAME_NO_IDENT_CHAR_CHECK | 0x10000 | 隱藏有效識別碼字元的檢查。 |
UNDNAME_NO_PTR64 | 0x20000 | 輸出中不包含 ptr64。 |
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應