Console Library 4.7.0
A header-only library that makes C++ simple
Loading...
Searching...
No Matches
output.h File Reference

提供 STL 容器的格式化输出和灵活的输出控制工具。 More...

#include <cstddef>
#include <iterator>
#include "repr.h"

Go to the source code of this file.

Classes

struct  console::TuplePrinter< Tuple, N >
 递归打印 tuple 的辅助模板(主模板)。 More...
struct  console::TuplePrinter< Tuple, 1 >
 递归打印 tuple 的偏特化:处理单个元素。 More...
struct  console::TuplePrinter< Tuple, 0 >
 递归打印 tuple 的偏特化:处理空 tuple。 More...
class  console::Output
 灵活的输出控制类,支持链式调用和多种参数。 More...

Namespaces

namespace  console
 本库所有组件所在的顶层命名空间。

Functions

template<class Cont>
std::ostream & console::cont_print_sequence (std::ostream &os, const Cont &cont)
 输出序列容器(如 vector, list)的内容,格式为 [a, b, c]。
template<class Cont>
std::ostream & console::cont_print_set (std::ostream &os, const Cont &cont)
 输出集合容器(如 set, unordered_set)的内容,格式为 {a, b, c}。
template<class Cont>
std::ostream & console::cont_print_map (std::ostream &os, const Cont &cont)
 输出映射容器(如 map, unordered_map)的内容,格式为 {key: value, ...}。
template<class T>
std::ostream & console::operator<< (std::ostream &, const std::vector< T > &)
 std::vector 输出声明。
template<class T>
std::ostream & console::operator<< (std::ostream &, const std::deque< T > &)
 std::deque 输出声明。
template<class T>
std::ostream & console::operator<< (std::ostream &, const std::list< T > &)
 std::list 输出声明。
template<class T>
std::ostream & console::operator<< (std::ostream &, const std::forward_list< T > &)
 std::forward_list 输出声明。
template<class T, size_t n>
std::ostream & console::operator<< (std::ostream &, const std::array< T, n > &)
 std::array 输出声明。
template<class T>
std::ostream & console::operator<< (std::ostream &, const std::set< T > &)
 std::set 输出声明。
template<class K, class V>
std::ostream & console::operator<< (std::ostream &, const std::map< K, V > &)
 std::map 输出声明。
template<class T>
std::ostream & console::operator<< (std::ostream &, const std::multiset< T > &)
 std::multiset 输出声明。
template<class K, class V>
std::ostream & console::operator<< (std::ostream &, const std::multimap< K, V > &)
 std::multimap 输出声明。
template<class T>
std::ostream & console::operator<< (std::ostream &, const std::unordered_set< T > &)
 std::unordered_set 输出声明。
template<class K, class V>
std::ostream & console::operator<< (std::ostream &, const std::unordered_map< K, V > &)
 std::unordered_map 输出声明。
template<class T>
std::ostream & console::operator<< (std::ostream &, const std::unordered_multiset< T > &)
 std::unordered_multiset 输出声明。
template<class K, class V>
std::ostream & console::operator<< (std::ostream &, const std::unordered_multimap< K, V > &)
 std::unordered_multimap 输出声明。
template<class T>
std::ostream & console::operator<< (std::ostream &, const std::valarray< T > &)
 std::valarray 输出声明。
template<class T, class U>
std::ostream & console::operator<< (std::ostream &, const std::pair< T, U > &)
 std::pair 输出声明。
template<class... Args>
std::ostream & console::operator<< (std::ostream &, const std::tuple< Args... > &)
 std::tuple 输出声明。
template<class T, size_t N>
std::array< T, N > console::to_array (const T(&ar)[N])
 将 C 风格数组转换为 std::array。
template<class T, size_t N>
std::vector< T > console::to_vector (const T(&ar)[N])
 将 C 风格数组转换为 std::vector。

Variables

class console::Output console::print
 全局输出对象,模仿 Python 的 print 函数。

Detailed Description

提供 STL 容器的格式化输出和灵活的输出控制工具。

该头文件重载了 operator<< 使得标准容器(vector, list, set, map 等)、 pair 和 tuple 可以直接输出到流。同时提供了 Output 类用于灵活控制输出格式, 以及辅助函数 to_arrayto_vector 用于将 C 风格数组转换为 STL 容器。

Author
MrXie1109
Date
2026