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
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.

Microsoft-Specific Modifiers

This section describes Microsoft-specific extensions to C++ in the following areas:

Many of the Microsoft-specific keywords can be used to modify declarators to form derived types. For more information about declarators, see Declarators.

Microsoft-Specific Keywords
Keyword Meaning Used to Form Derived Types?


The name that follows declares a 32-bit offset to the 32-bit base contained in the declaration.



The name that follows uses the C naming and calling conventions.



The name that follows specifies a Microsoft-specific storage-class attribute.



The name that follows declares a function that uses registers, when available, instead of the stack for argument passing.



Similar to __declspec(restrict), but for use on variables.



Specifies that pointer conversion extends the high-order bit of a 32-bit pointer throughout the high-order portion of a 64-bit pointer.



The name that follows specifies a function that observes the standard calling convention.



Specifies that pointer conversion sets the high-order portion of a 64-bit pointer to zero.



Marks a date type as being larger on a 64-bit compiler.



Specifies that a pointer to a type or other data is not aligned.


Community Additions

© 2015 Microsoft