今天在vs中寫帶windows的界面的程序時發現調用的全是system的庫,導致string也是使用的system的庫,里邊缺少一些標准C++的轉換函數,所以需要轉化成std::string才可以操作,那么如何轉換呢?微軟提供了這兩者轉換方法如下:
#include <msclr\marshal_cppstd.h>//頭文件
//eg:
System::String^ msg= "test";
std::string str = msclr::interop::marshal_as<std::string>(msg);