Procedura: specificare un parametro out

Nell'esempio di codice riportato di seguito viene illustrato come specificare che un parametro di funzione è un parametro out e come chiamare tale funzione da un programma C#.

In Visual C++ un parametro out viene specificato con OutAttribute.

Esempio

La prima parte di questo esempio è costituita da una DLL Visual C++ con tipo che contiene una funzione con un parametro out.

// 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";
   }
};

Si tratta di un client C# che utilizza il componente Visual C++ creato nell'esempio precedente.

// 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);
   }
}
  

Vedere anche

Riferimenti

Utilizzo delle funzionalità di interoperabilità C++ (PInvoke implicito)