Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

Compiler Options Macros

These macros control specific compiler features.

_ATL_ALL_WARNINGS

A symbol which enables errors in projects converted from previous versions of ATL.

_ATL_APARTMENT_THREADED

Define if one or more of your objects use apartment threading.

_ATL_CSTRING_EXPLICIT_CONSTRUCTORS

Makes certain CString constructors explicit, preventing any unintentional conversions.

_ATL_ENABLE_PTM_WARNING

Define this macro in order to use C++ standard compliant syntax, which generates the C4867 compiler error when a non standard syntax is used to initialize a pointer to a member function.

_ATL_FREE_THREADED

Define if one or more of your objects use free or neutral threading.

_ATL_MULTI_THREADED

A symbol that indicates the project will have objects that are marked as Both, Free or Neutral. The macro _ATL_FREE_THREADED should be used instead.

_ATL_NO_AUTOMATIC_NAMESPACE

A symbol which prevents the default use of namespace as ATL.

_ATL_NO_COM_SUPPORT

A symbol which prevents COM-related code from being compiled with your project.

ATL_NO_VTABLE

A symbol that prevents the vtable pointer from being initialized in the class's constructor and destructor.

ATL_NOINLINE

A symbol that indicates a function should not be inlined.

_ATL_SINGLE_THREADED

Define if all of your objects use the single threading model.

Other Resources

Community Additions

ADD
Show:
© 2015 Microsoft