我試圖得到一個字符串報告沒有裝飾窗戶上沒有成功可言類類型(Visual Studio 2010中)。的boost ::核心::視覺工作室typeid的還原函數()。名稱
由於UnDecorateName不起作用我正在使用boost庫。
#include <typeinfo>
#include <boost/core/demangle.hpp>
class MyObject{};
int main (int argc, char ** argv)
{
MyObject o;
const char * str = typeid(o).name(); // str = "class MyObject"
std::string dstr = boost::core::demangle(str); // dstr = "class MyObject"
return 0;
}
我怎樣才能從上面的代碼只得到「MyObject」作爲輸出字符串? 現在我不能使用C++ 11方法。
如何對一些簡單的字符串操作(即刪除前6個字符)? –
它不適用於所有情況。例如:int *。 – mrgiov
看看關鍵字類/結構/聯合/枚舉從字符串中刪除它們。 –