ATL Typedef
Active Template Library 包含下列 typedefs。
Typedef | 描述 |
---|---|
_ATL_BASE_MODULE | 根據 _ATL_BASE_MODULE70 定義為 typedef。 |
_ATL_COM_MODULE | 根據 _ATL_COM_MODULE70 定義為 typedef。 |
_ATL_MODULE | 根據 _ATL_MODULE70 定義為 typedef。 |
_ATL_WIN_MODULE | 根據 _ATL_WIN_MODULE70定義為 typedef |
ATL_URL_PORT | CUrl 用於 指定埠號碼的類型。 |
CComDispatchDriver | 這個類別會管理 COM 介面指標。 |
CComGlobalsThreadModel | 不論使用的執行緒模型為何,都會呼叫適當的執行緒模型方法。 |
CComObjectThreadModel | 不論使用的執行緒模型為何,都會呼叫適當的執行緒模型方法。 |
CContainedWindow | 這個類別是 的 CContainedWindowT 特製化。 |
CPath | 使用 CString 的 CPathT 特製化。 |
CPathA | 使用 CStringA 的 CPathT 特製化。 |
CPathW | 使用 CStringW 的 CPathT 特製化。 |
CSimpleValArray | 表示用來儲存簡單型別的陣列。 |
DefaultThreadTraits | 預設執行緒特性類別。 |
LPCURL | 常數 CUrl 物件的指標。 |
LPURL | CUrl 物件的指標 。 |
_ATL_BASE_MODULE
根據_ATL_BASE_MODULE70定義為 typedef。
typedef ATL::_ATL_BASE_MODULE70 _ATL_BASE_MODULE;
備註
用於每個 ATL 專案中。 根據 _ATL_BASE_MODULE70 。
屬於 ATL 7.0 模組類別的類別衍生自 _ATL_BASE_MODULE 結構。 如需 ATL 模組類別的詳細資訊,請參閱 COM 模組類別 。
需求
標頭: atlcore.h
_ATL_COM_MODULE
根據_ATL_COM_MODULE70定義為 typedef。
typedef ATL::_ATL_COM_MODULE70 _ATL_COM_MODULE;
備註
由使用 COM 功能的 ATL 專案使用。 根據 _ATL_COM_MODULE70 。
需求
標頭: atlbase.h
_ATL_MODULE
根據_ATL_MODULE70定義為 typedef。
typedef ATL::_ATL_MODULE70 _ATL_MODULE;
需求
標頭:
備註
根據 _ATL_MODULE70 。
_ATL_WIN_MODULE
根據_ATL_WIN_MODULE70定義為 typedef。
typedef ATL::_ATL_WIN_MODULE70 _ATL_WIN_MODULE;
備註
由任何使用視窗化功能的 ATL 專案使用。 根據 _ATL_WIN_MODULE70 。
需求
標頭: atlbase.h
ATL_URL_PORT
CUrl 用於 指定埠號碼的類型。
typedef WORD ATL_URL_PORT;
需求
標頭: atlutil.h
CComDispatchDriver
這個類別會管理 COM 介面指標。
typedef CComQIPtr<IDispatch, &__uuidof(IDispatch)> CComDispatchDriver;
需求
標頭: atlbase.h
CComGlobalsThreadModel
不論使用的執行緒模型為何,都會呼叫適當的執行緒模型方法。
#if defined(_ATL_SINGLE_THREADED)
typedef CComSingleThreadModel CComGlobalsThreadModel;
#elif defined(_ATL_APARTMENT_THREADED)
typedef CComMultiThreadModel CComGlobalsThreadModel;
#elif defined(_ATL_FREE_THREADED)
typedef CComMultiThreadModel CComGlobalsThreadModel;
#else
#pragma message ("No global threading model defined")
#endif
備註
根據應用程式所使用的執行緒模型, typedef
名稱會參考 CComSingleThreadModel 或 CComMultiThreadModel 。 CComGlobalsThreadModel
這些類別提供參考重要區段類別的其他 typedef
名稱。
注意
CComGlobalsThreadModel
不會參考類別 CComMultiThreadModelNoCS 。
使用 CComGlobalsThreadModel
可協助您指定特定的執行緒模型類別。 不論所使用的執行緒模型為何,都會呼叫適當的方法。
除了 CComGlobalsThreadModel
,ATL 還提供 typedef
CComObjectThreadModel 名稱 。 所 typedef
參考的類別取決於所使用的執行緒模型,如下表所示:
typedef | 單一執行緒處理 | Apartment 執行緒 | 免費執行緒 |
---|---|---|---|
CComObjectThreadModel |
S | S | M |
CComGlobalsThreadModel |
S | M | M |
S= CComSingleThreadModel
;M= CComMultiThreadModel
在單一物件類別內使用 CComObjectThreadModel
。 在 CComGlobalsThreadModel
全域可供程式使用的物件中,或當您想要跨多個執行緒保護模組資源時使用。
需求
標頭: atlbase.h
CComObjectThreadModel
不論使用的執行緒模型為何,都會呼叫適當的執行緒模型方法。
#if defined(_ATL_SINGLE_THREADED)
typedef CComSingleThreadModel CComObjectThreadModel;
#elif defined(_ATL_APARTMENT_THREADED)
typedef CComSingleThreadModel CComObjectThreadModel;
#elif defined(_ATL_FREE_THREADED)
typedef CComMultiThreadModel CComObjectThreadModel;
#else
#pragma message ("No global threading model defined")
#endif
備註
根據應用程式所使用的執行緒模型, typedef
名稱會參考 CComSingleThreadModel 或 CComMultiThreadModel 。 CComObjectThreadModel
這些類別提供參考重要區段類別的其他 typedef
名稱。
注意
CComObjectThreadModel
不會參考類別 CComMultiThreadModelNoCS 。
使用 CComObjectThreadModel
可協助您指定特定的執行緒模型類別。 不論所使用的執行緒模型為何,都會呼叫適當的方法。
除了 CComObjectThreadModel
,ATL 還提供 typedef
CComGlobalsThreadModel 名稱 。 所 typedef
參考的類別取決於所使用的執行緒模型,如下表所示:
typedef | 單一執行緒處理 | Apartment 執行緒 | 免費執行緒 |
---|---|---|---|
CComObjectThreadModel |
S | S | M |
CComGlobalsThreadModel |
S | M | M |
S= CComSingleThreadModel
;M= CComMultiThreadModel
在單一物件類別內使用 CComObjectThreadModel
。 在 CComGlobalsThreadModel
可全域提供給程式的物件中使用,或當您想要跨多個執行緒保護模組資源時使用。
需求
標頭: atlbase.h
CContainedWindow
這個類別是 的 CContainedWindowT
特製化。
typedef CContainedWindowT<CWindow> CContainedWindow;
需求
標頭: atlwin.h
備註
CContainedWindow
是 CContainedWindowT 的 特製化。 如果您想要變更基類或特性,請直接使用 CContainedWindowT
。
CPath
使用 CString
的 CPathT 特製化。
typedef CPathT<CString> CPath;
需求
標頭: atlpath.h
CPathA
使用 CStringA
的 CPathT 特製化。
typedef CPathT<CStringA> CPathA;
需求
標頭: atlpath.h
CPathW
使用 CStringW
的 CPathT 特製化。
typedef ATL::CPathT<CStringW> CPathW;
需求
標頭: atlpath.h
CSimpleValArray
表示用來儲存簡單型別的陣列。
#define CSimpleValArray CSimpleArray
備註
CSimpleValArray
提供 來建立和管理包含單一資料型別的陣列。 這是 CSimpleArray 的 簡單 #define。
需求
標頭: atlsimpcoll.h
LPCURL
常數 CUrl 物件的指標。
typedef const CUrl* LPCURL;
需求
標頭: atlutil.h
DefaultThreadTraits
預設執行緒特性類別。
語法
#if defined(_MT)
typedef CRTThreadTraits DefaultThreadTraits;
#else
typedef Win32ThreadTraits DefaultThreadTraits;
#endif
備註
如果目前的專案使用多執行緒 CRT,DefaultThreadTraits 會定義為 CRTThreadTraits。 否則會使用 Win32ThreadTraits。
需求
標頭: atlbase.h
LPURL
CUrl 物件的指標 。
typedef CUrl* LPURL;
需求
標頭: atlutil.h
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應