Calcular referencias de cadenas

En la invocación de plataforma se copian los parámetros de cadena y se convierten del formato de .NET Framework (Unicode) al formato no administrado (ANSI), si se requiere. Como las cadenas administradas son inmutables, en la invocación de plataforma no se vuelven a copiar desde la memoria no administrada a la memoria administrada cuando finaliza la función.

En la tabla siguiente se enumeran las opciones de cálculo de referencias para las cadenas, se describe su uso y se proporciona un vínculo al ejemplo correspondiente en .NET Framework.

Cadena

Descripción

Ejemplo

Por valor

Pasa las cadenas como parámetros In.

MsgBox

Como resultado

Devuelve las cadenas desde el código no administrado.

Strings

Por referencia

Pasa las cadenas como parámetros In/Out mediante StringBuilder.

Buffers

En una estructura por valor

Pasa las cadenas en una estructura que es un parámetro In.

Structs

En una estructura por referencia (char*)

Pasa las cadenas en una estructura que es un parámetro In/Out. La función no administrada espera recibir un puntero a un búfer de caracteres y el tamaño del búfer es un miembro de la estructura.

Strings

En una estructura por referencia (char[])

Pasa las cadenas en una estructura que es un parámetro In/Out. La función no administrada espera recibir un búfer de caracteres incrustado.

OSInfo

En una clase por valor (char*)

Pasa las cadenas en una clase (una clase es un parámetro In/Out). La función no administrada espera recibir un puntero a un búfer de caracteres.

OpenFileDlg

En una clase por valor (char[])

Pasa las cadenas en una clase (una clase es un parámetro In/Out). La función no administrada espera recibir un búfer de caracteres incrustado.

OSInfo

Como una matriz de cadenas por valor

Crea una matriz de cadenas que se pasa por valor.

Arrays

Como una matriz de estructuras que contienen cadenas por valor

Crea una matriz de estructuras que contienen cadenas y la matriz se pasa por valor.

Arrays

Vea también

Conceptos

Tipos de datos de invocación de plataforma

Calcular referencias de clases, estructuras y uniones

Calcular referencias de matrices de tipos

Diversos ejemplos de cálculo de referencias

Otros recursos

Calcular referencias de datos con invocación de plataforma