boost::is_output_streamable检测的实例程序
Boost库中的is_output_streamable可以用于检测类型是否可以输出到流中。本文将给出一个简单的示例程序,以便更好地理解boost::is_output_streamable的用法。
#include <iostream>
#include <boost/type_traits.hpp>
template<typename T>
void printMetadata()
{
std::cout << "Type: " << typeid(T).name() << std::endl;
std::cout << "Is output streamable? "
<< std::boolalpha << boost::is_output_streamable<T>::value << std::endl;
std::cout << "--------------------------" << std::endl;
}
int main()
{
// 测试基本类型
printMetadata<int>();
printMetadata<double>();
printMetadata<char>();
// 测试自定义类型