/
BirdLeon
/
ROBLOX2016
Обзор
Документация
Войти
/
BirdLeon
/
ROBLOX2016
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
Library/boost/libs/core/test/demangle_test.cpp
62 строки
1 KB
PatoFlamejanteTV
full source code
19 дек 2024, 19:11
19 дек 2024, 19:11
05db15d
Код
Авторство
О чём код?
// // Trivial test for core::demangle // // Copyright (c) 2014 Peter Dimov // Copyright (c) 2014 Andrey Semashev // // Distributed under the Boost Software License, Version 1.0. // See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt // #include <boost/core/demangle.hpp> #include <typeinfo> #include <iostream> template<class T1, class T2> struct Y1 { }; void test_demangle() { typedef Y1<int, long> T; std::cout << boost::core::demangle( typeid( T ).name() ) << std::endl; } void test_demangle_alloc() { typedef Y1<int, long> T; const char* p = boost::core::demangle_alloc( typeid( T ).name() ); if (p) { std::cout << p << std::endl; boost::core::demangle_free(p); } else { std::cout << "[demangling failed]" << std::endl; } } void test_scoped_demangled_name() { typedef Y1<int, long> T; boost::core::scoped_demangled_name demangled_name( typeid( T ).name() ); const char* p = demangled_name.get(); if (p) { std::cout << p << std::endl; } else { std::cout << "[demangling failed]" << std::endl; } } int main() { test_demangle(); test_demangle_alloc(); test_scoped_demangled_name(); return 0; }