Total Articles 180
[Source]
#include <boost/units/detail/utility.hpp> #include <iostream> #include <typeinfo> namespace bud = boost::units::detail; using namespace std; namespace ns { class MyClass {}; struct MyStruct {}; } void test() { cout << "int = " << typeid(int).name() << endl; cout << "int* = " << typeid(int*).name() << endl; cout << "MyClass = " << typeid(ns::MyClass).name() << endl; cout << "MyClass* = " << typeid(ns::MyClass*).name() << endl; cout << "MyStruct = " << typeid(ns::MyStruct).name() << endl; cout << "MyStruct* = " << typeid(ns::MyStruct*).name() << endl; cout << "std::string = " << typeid(std::string).name() << endl; cout << "std::string* = " << typeid(std::string*).name() << endl; } void demangle_test() { cout << "int = " << bud::demangle(typeid(int).name()) << endl; cout << "int* = " << bud::demangle(typeid(int*).name()) << endl; cout << "MyClass = " << bud::demangle(typeid(ns::MyClass).name()) << endl; cout << "MyClass* = " << bud::demangle(typeid(ns::MyClass*).name()) << endl; cout << "MyStruct = " << bud::demangle(typeid(ns::MyStruct).name()) << endl; cout << "MyStruct* = " << bud::demangle(typeid(ns::MyStruct*).name()) << endl; cout << "std::string = " << bud::demangle(typeid(std::string).name()) << endl; cout << "std::string* = " << bud::demangle(typeid(std::string*).name()) << endl; } int main() { test(); cout << endl; demangle_test(); return 0; }
[Result]
[Visual Studio] int = int int* = int * MyClass = class ns::MyClass MyClass* = class ns::MyClass * MyStruct = struct ns::MyStruct MyStruct* = struct ns::MyStruct * std::string = class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > std::string* = class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > * int = int int* = int * MyClass = class ns::MyClass MyClass* = class ns::MyClass * MyStruct = struct ns::MyStruct MyStruct* = struct ns::MyStruct * std::string = class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > std::string* = class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > * [g++] int = i int* = Pi MyClass = N2ns7MyClassE MyClass* = PN2ns7MyClassE MyStruct = N2ns8MyStructE MyStruct* = PN2ns8MyStructE std::string = Ss std::string* = PSs int = int int* = int* MyClass = ns::MyClass MyClass* = ns::MyClass* MyStruct = ns::MyStruct MyStruct* = ns::MyStruct* std::string = std::string std::string* = std::string*
[Download]
호... 난 별도의 툴을 이용했었는데...
부스트에 내장된줄은 몰랏네요