我试图在没有ref类的情况下全局使用CLR字符串但是当我尝试显示字符串时我在控制台中得到“True”但是当我在消息框中显示它时我得到了我想要它说的内容。有任何想法吗?代码:
#include <Windows.h>
#using <System.dll>
using namespace System;
using namespace System::Net;
using namespace System::Net::Sockets;
static String^* str;
int main()
{
str = (String^*)"Hellooo";
Console::WriteLine(str);
Console::ReadKey();
}
答案 0 :(得分:0)
您可以创建一个函数将std::string
转换为String^
,然后在控制台上打印:
String^ CppStringToSysString(const std::string& s)
{
return Marshal::PtrToStringAnsi((IntPtr)(char*)s.c_str());
}