Dot-Net
C++ .NET 將 System::String 轉換為 std::string
如何在 C++ .NET 中將 System::String 轉換為 std::string?
如果您使用的是最新版本的 .net,則語法更簡潔
#include "stdafx.h" #include <string> #include <msclr\marshal_cppstd.h> using namespace System; int main(array<System::String ^> ^args) { System::String^ managedString = "test"; msclr::interop::marshal_context context; std::string standardString = context.marshal_as<std::string>(managedString); return 0; }這也可以讓您在面對異常時進行更好的清理。
有一篇關於其他各種轉換的msdn 文章