Platform::Agile (Clase)
Representa un objeto que tiene MashalingBehavior=Standard como objeto ágil, lo que reduce en gran medida las posibilidades de excepciones de subprocesamiento en tiempo de ejecución. Agile<T>
permite que el objeto que no es Agile llame al mismo subproceso o a otro diferente, o que le llame a él. Para obtener más información, vea Subprocesos y serialización.
Sintaxis
template <typename T>
class Agile;
Parámetros
T
typename de la clase que no es Agile.
Comentarios
La mayoría de las clases de Windows Runtime son Agile. Un objeto Agile puede llamar a un objeto en proceso o fuera de proceso del mismo subproceso u otro diferente, o que le llame a él. Si un objeto no es Agile, ajuste el objeto que no Agile en un objeto Agile<T>
, que es Agile. Se pueden calcular las referencias del objeto Agile<T>
y se puede usar el objeto que no es Agile subyacente.
La clase Agile<T>
es una clase de C++ estándar, nativa y requiere agile.h
. Representa el objeto que no es Agile y el contextodel objeto Agile. El contexto especifica el modelo de subprocesos de un objeto Agile y el comportamiento del cálculo de referencias. El sistema operativo usa el contexto para determinar de qué manera calcular las referencias de un objeto.
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
Agile::Agile | Inicializa una nueva instancia de la clase Agile. |
Agile::~Agile (Destructor) | Destruye la instancia actual de la clase Agile. |
Métodos públicos
Nombre | Descripción |
---|---|
Agile::Get | Devuelve un identificador al objeto representado por el objeto Agile actual. |
Agile::GetAddressOf | Reinicializa el objeto Agile actual y luego devuelve la dirección de un identificador a un objeto de tipo T . |
Agile::GetAddressOfForInOut | Devuelve la dirección de un identificador al objeto representado por el objeto Agile actual. |
Agile::Release | Descarta el objeto y el contexto subyacentes del objeto Agile actual. |
Operadores públicos
Nombre | Descripción |
---|---|
Agile::operator-> | Recupera un identificador al objeto representado por el objeto Agile actual. |
Agile::operator= | Asigna el valor especificado al objeto Agile actual. |
Jerarquía de herencia
Object
Agile
Requisitos
Cliente mínimo compatible: Windows 8
Servidor mínimo compatible: Windows Server 2012
Espacio de nombres: Plataforma
Encabezado: agile.h
Agile::Agile (Constructor)
Inicializa una nueva instancia de la clase Agile.
Sintaxis
Agile();
Agile(T^ object);
Agile(const Agile<T>& object);
Agile(Agile<T>&& object);
Parámetros
T
Un tipo especificado por el parámetro typename de la plantilla.
object
En la segunda versión de este constructor, un objeto utilizado para inicializar una nueva instancia de Agile. En la tercera versión, el objeto que se copia en la nueva instancia de Agile. En la cuarta versión, el objeto que se mueve a la nueva instancia de Agile.
Comentarios
La primera versión de este constructor es el constructor predeterminado. La segunda versión inicializa una nueva clase de instancia de Agile del objeto especificado por el parámetro object
. La tercera versión es el constructor de copias. La cuarta versión es el constructor de movimiento. Este constructor no puede producir excepciones.
Agile::~Agile (Destructor)
Destruye la instancia actual de la clase Agile.
Sintaxis
~Agile();
Comentarios
Este destructor también libera el objeto representado por el objeto Agile actual.
Agile::Get (Método)
Devuelve un identificador al objeto representado por el objeto Agile actual.
Sintaxis
T^ Get() const;
Valor devuelto
Un identificador al objeto representado por el objeto Agile actual.
El tipo del valor devuelto es realmente un tipo interno no revelado. Una manera cómoda de contener el valor devuelto es asignarlo a una variable que se declara con la palabra clave de deducción de tipos auto
. Por ejemplo, auto x = myAgileTvariable->Get();
.
Agile::GetAddressOf (Método)
Reinicializa el objeto Agile actual y luego devuelve la dirección de un identificador a un objeto de tipo T
.
Sintaxis
T^* GetAddressOf() throw();
Parámetros
T
Un tipo especificado por el parámetro typename de la plantilla.
Valor devuelto
Dirección de un identificador para un objeto de tipo T
.
Comentarios
Esta operación libera la representación actual de un objeto de tipo T
, si existe; reinicializa los miembros de datos del objeto Agile; adquiere el contexto de subproceso actual y, a continuación, devuelve la dirección de una variable de identificador a objeto que puede representar un objeto no ágil. Para hacer que una instancia de la clase Agile represente un objeto, use el operador de asignación (Agile::operator=) a fin de asignar el objeto a la instancia de la clase Agile.
Agile::GetAddressOfForInOut (Método)
Devuelve la dirección de un identificador al objeto representado por el objeto Agile actual.
Sintaxis
T^* GetAddressOfForInOut() throw();
Parámetros
T
Un tipo especificado por el parámetro typename de la plantilla.
Valor devuelto
La dirección de un identificador al objeto representado por el objeto Agile actual.
Comentarios
Esta operación adquiere el contexto de subprocesos actual y devuelve después la dirección de un identificador al objeto subyacente.
Agile::Release (Método)
Descarta el objeto y el contexto subyacentes del objeto Agile actual.
Sintaxis
void Release() throw();
Comentarios
Si existen, el objeto y el contexto subyacentes del objeto Agile actual se descartan y, a continuación, el valor del objeto Agile se establece en null.
Operador Agile::operator->
Recupera un identificador al objeto representado por el objeto Agile actual.
Sintaxis
T^ operator->() const throw();
Valor devuelto
Identificador al objeto representado por el objeto Agile actual.
Este operador devuelve realmente un tipo interno no revelado. Una manera cómoda de contener el valor devuelto es asignarlo a una variable que se declara con la palabra clave de deducción de tipos auto
.
Agile::operator= (Operador)
Asigna el objeto especificado al objeto Agile actual.
Sintaxis
Agile<T> operator=( T^ object ) throw();
Agile<T> operator=( const Agile<T>& object ) throw();
Agile<T> operator=( Agile<T>&& object ) throw();
T^ operator=( IUnknown* lp ) throw();
Parámetros
T
Tipo especificado por el nombre de tipo de plantilla.
object
Objeto o identificador de un objeto que se copia o se mueve al objeto Agile actual.
elepé
Puntero de interfaz IUnknown de un objeto.
Valor devuelto
Identificador para un objeto de tipo T
.
Comentarios
La primera versión del operador de asignación copia un identificador para un tipo de referencia al objeto Agile actual. La segunda versión copia una referencia a un tipo Agile al objeto Agile actual. La tercera versión mueve un tipo Agile al objeto Agile actual. La cuarta versión mueve un puntero a un objeto COM al objeto Agile actual.
La operación de asignación conserva automáticamente el contexto del objeto Agile actual.