Como: Especifique um limite parâmetro
Este exemplo mostra como especificar que um parâmetro de função é um parâmetro de saída e como chamar essa função a partir de um programa C#.
Um parâmetro de saída é especificado no Visual C++ com OutAttribute .
Exemplo
A primeira parte deste exemplo é uma DLL do Visual C++ com um tipo de uma função com um parâmetro de saída.
// cpp_out_param.cpp
// compile with: /LD /clr:safe
using namespace System;
public value struct TestStruct {
static void Test([Runtime::InteropServices::Out] String^ %s) {
s = "a string";
}
};
Este é um cliente do C# que consome o componente do Visual C++ criado no exemplo anterior.
// cpp_out_param_2.cs
// compile with: /reference:cpp_out_param.dll
using System;
class TestClass {
public static void Main() {
String t;
TestStruct.Test(out t);
System.Console.WriteLine(t);
}
}