Практическое руководство. Определение выходного параметра
В этом примере описывается порядок определения выходного параметра функции и вызова такой функции в программе C#.
В Visual C++ выходной параметр определяется с помощью атрибута OutAttribute.
Пример
В первой части примера представлена библиотека DLL Visual C++, в которой определяется тип, содержащий функцию с выходным параметром.
// 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";
}
};
Здесь описывается клиент C#, использующий компонент Visual C++, созданный в предыдущем примере.
// 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);
}
}