谁能告诉我如何从方法返回字符串数组并在 C# 中使用它?
假设我必须返回一个数组 {one,two, .....ten} 并且在 c++ 中我必须显示这个 在控制台上排列并执行一些操作。
最佳答案
示例见此处:http://haroonsaeed.wordpress.com/2006/08/11/interop-managed-c-and-c/
不是我自己做的,而是猜测:
在 C# 中使用以下类创建名为 csharpassembly.dll 的程序集
using System;
namespace Csharpassembly {
public class CSharpClass {
public static string[] GetStrings() {
return new string[] {"1", "2", "3"}));
}
}
}
但在你的情况下。有一个在 c# 中创建数组的程序集,并且有一个 mC++ 程序引用这个程序集并调用它:
#include "stdafx.h"
#using <mscorlib.dll>
#using "csharpassembly.dll"
using namespace System;
using namespace Csharpassembly
__gc class Test {
public:
static void ProcessCShaperStrings() {
array^ stringArray = CSharpClass::GetStrings();
Console::WriteLine(stringArray [0]); ...
// etc
}
};
int wmain(void) {
Test:: ProcessCShaperStrings();
return 0;
}
关于c# - 如何在 C# 中返回字符串数组并在非托管 C++ 中使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1037709/