Partilhar via


Como especificar um parâmetro out

Este exemplo mostra como especificar que um parâmetro de função é um out parâmetro e como chamar essa função de um programa em C#.

Um out parâmetro é especificado em C++ usando OutAttribute .

Exemplo

A primeira parte deste exemplo cria uma DLL C++. Ele define um tipo que contém uma função com um out parâmetro.

// cpp_out_param.cpp
// compile with: /LD /clr
using namespace System;
public value struct TestStruct {
   static void Test([Runtime::InteropServices::Out] String^ %s) {
      s = "a string";
   }
};

Esse arquivo de origem é um cliente C# que consome o componente 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);
   }
}
a string

Ver também

Usando a Interoperação C++ (PInvoke implícito)