共用方式為


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 停用 staticvirtual 成員的擴充。
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。

另請參閱