RuntimeClass Class

 

For the latest documentation on Visual Studio 2017 RC, see Visual Studio 2017 RC Documentation.

Represents an instantiated class that inherits the specified number of interfaces, and provides the specified Windows Runtime, classic COM, and weak reference support.

You typically derive your WRL types from RuntimeClass because this class implements AddRef, Release, and QueryInterface, and helps manage the overall reference count of the module.

template <  
   typename I0,  
   typename I1 = Details::Nil,  
   typename I2 = Details::Nil,  
   typename I3 = Details::Nil,  
   typename I4 = Details::Nil,  
   typename I5 = Details::Nil,  
   typename I6 = Details::Nil,  
   typename I7 = Details::Nil,  
   typename I8 = Details::Nil,  
   typename I9 = Details::Nil  
>  
class RuntimeClass : public Details::RuntimeClass<typename Details::InterfaceListHelper<I0, I1, I2, I3, I4, I5, I6, I7, I8, I9>::TypeT, RuntimeClassFlags<WinRt>>;  
  
template <  
   unsigned int classFlags,  
   typename I0,  
   typename I1,  
   typename I2,  
   typename I3,  
   typename I4,  
   typename I5,  
   typename I6,  
   typename I7,  
   typename I8  
>  
class RuntimeClass<RuntimeClassFlags<classFlags>, I0, I1, I2, I3, I4, I5, I6, I7, I8> : public Details::RuntimeClass<typename Details::InterfaceListHelper<I0, I1, I2, I3, I4, I5, I6, I7, I8>::TypeT, RuntimeClassFlags<classFlags> >;  

Parameters

I0
The zeroth interface ID. (Mandatory)

I1
The first interface ID. (Optional)

I2
The second interface ID. (Optional)

I3
The third interface ID. (Optional)

I4
The fourth interface ID. (Optional)

I5
The fifth interface ID. (Optional)

I6
The sixth interface ID. (Optional)

I7
The seventh interface ID. (Optional)

I8
The eigth interface ID. (Optional)

I9
The ninth interface ID. (Optional)

classFlags
A combination of one or more RuntimeClassType enumeration values.

Public Constructors

NameDescription
RuntimeClass::RuntimeClass ConstructorInitializes the current instance of the RuntimeClass class.
RuntimeClass::~RuntimeClass DestructorDeinitializes the current instance of the RuntimeClass class.

I0

ChainInterfaces

I0

RuntimeClassBase

ImplementsHelper

DontUseNewUseMake

RuntimeClassFlags

RuntimeClassBaseT

RuntimeClass

RuntimeClass

Header: implements.h

Namespace: Microsoft::WRL

Microsoft::WRL Namespace

Show: