describe the variadic template args now used, fill in missing parts - #145
Conversation
This page was documenting the pre-Variadic template arg version of this function, was missing several important things so I've updated it
| `RuntimeClass` | ||
|
|
||
| `RuntimeClass` | ||
| This is an implementaiton detail. |
| A combination of one or more [RuntimeClassType](../windows/runtimeclasstype-enumeration.md) enumeration values. The `__WRL_CONFIGURATION_LEGACY__` macro can be defined to change the default value of classFlags for all runtime classes in the project. If defined, RuntimeClass instances are non-agile dy default. When not defined, RuntimeClass instances are agile by default. To avoid ambiguity always specify the RuntimeClassType::FtmBase or RuntimeClassType::InhibitFtmBase. | ||
| Optional paramater. A combination of one or more [RuntimeClassType](../windows/runtimeclasstype-enumeration.md) enumeration values. The `__WRL_CONFIGURATION_LEGACY__` macro can be defined to change the default value of classFlags for all runtime classes in the project. If defined, RuntimeClass instances are non-agile dy default. When not defined, RuntimeClass instances are agile by default. To avoid ambiguity always specify the RuntimeClassType::FtmBase or RuntimeClassType::InhibitFtmBase. Note, if InhibitFtmBase and FtmBase are both used the object will be agile. | ||
|
|
||
| `...TInterfaces` |
There was a problem hiding this comment.
You can also put an Implements here (rather than an interface). Maybe somebody who knows more can fill in the details.
There was a problem hiding this comment.
I'll leave that for later.
| Optional paramater. A combination of one or more [RuntimeClassType](../windows/runtimeclasstype-enumeration.md) enumeration values. The `__WRL_CONFIGURATION_LEGACY__` macro can be defined to change the default value of classFlags for all runtime classes in the project. If defined, RuntimeClass instances are non-agile dy default. When not defined, RuntimeClass instances are agile by default. To avoid ambiguity always specify the RuntimeClassType::FtmBase or RuntimeClassType::InhibitFtmBase. Note, if InhibitFtmBase and FtmBase are both used the object will be agile. | ||
|
|
||
| `...TInterfaces` | ||
| The list of interfaces the object implements beyond IUnknown, IInspectable or other interfaces controled by [RuntimeClassType](../windows/runtimeclasstype-enumeration.md). |
There was a problem hiding this comment.
TYPO: controlled.
| ## Members | ||
|
|
||
| `RuntimeClassInitialize` | ||
| A function that is called when MakeAndInitialize() is used to construct the object that contains initialization code that can return an HRESULT to indicate failure (S_OK otherwise). |
There was a problem hiding this comment.
Confusing grammar. (Antecedent of "that" is ambiguous.) Suggest
A function which initializes the object if the
MakeAndInitializetemplate function is used to construct the object. It returnsS_OKif the object was successfully initialized, or a COM error code if initialization failed. The COM error code is propagated as the return value ofMakeAndInitialize. Note that theRuntimeClassInitializemethod is not called if theMaketemplate function is used to construct the object.
This page was documenting the pre-Variadic template arg version of this function, was missing several important things so I've updated it. Raymond Chen (@oldnewthing) please check my work.