|
Console Library 8.0.0
A header-only library that makes C++ simple
|
提供容器的非拥有视图(View),支持区间切片和便捷的工厂函数。 More...
#include <cstddef>#include <iostream>#include <iterator>#include <string>#include <vector>#include "../core/csexc.h"#include "../io/output.h"Go to the source code of this file.
Classes | |
| class | console::View< Container > |
| 容器的非拥有视图(可变版本)。 More... | |
| class | console::View< const Container > |
| 容器的非拥有视图(常量版本)。 More... | |
| class | console::View< T[]> |
| T[] 的特化,包装原生数组指针。 More... | |
| class | console::View< const T[]> |
| const T[] 的特化,包装指向 const 的原生数组指针。 More... | |
Namespaces | |
| namespace | console |
| 本库所有组件所在的顶层命名空间。 | |
Functions | |
| template<class CharT, class Traits> | |
| std::basic_ostream< CharT, Traits > & | console::operator<< (std::basic_ostream< CharT, Traits > &os, const View< std::string > &sv) |
| 输出 std::string 视图的内容。 | |
| template<class CharT, class Traits, class Container> | |
| std::basic_ostream< CharT, Traits > & | console::operator<< (std::basic_ostream< CharT, Traits > &os, const View< Container > &v) |
| 输出任意视图的内容。 | |
| template<class Container> | |
| View< Container > | console::make_view (Container &cont) |
| 创建整个容器的视图(可变版本)。 | |
| template<class Container> | |
| View< const Container > | console::make_view (const Container &cont) |
| 创建整个容器的视图(常量版本)。 | |
| template<class Container> | |
| View< Container > | console::make_view (Container &cont, size_t start, size_t end) |
| 创建容器子区间的视图(可变版本)。 | |
| template<class Container> | |
| View< const Container > | console::make_view (const Container &cont, size_t start, size_t end) |
| 创建容器子区间的视图(常量版本)。 | |
| template<class Container> | |
| View< Container > | console::make_view (typename Container::iterator begin, typename Container::iterator end) |
| 从迭代器对创建视图(可变版本)。 | |
| template<class Container> | |
| View< const Container > | console::make_view (typename Container::const_iterator begin, typename Container::const_iterator end) |
| 从迭代器对创建视图(常量版本)。 | |
| template<class T> | |
| View< T[]> | console::make_view (T *begin, T *end) |
| 从指针对创建视图(可变版本)。 | |
| template<class T> | |
| View< const T[]> | console::make_view (const T *begin, const T *end) |
| 从指针对创建视图(常量版本)。 | |
| template<class T> | |
| View< T[]> | console::make_view (T *data, size_t count) |
| 从指针和长度创建视图(可变版本)。 | |
| template<class T> | |
| View< const T[]> | console::make_view (const T *data, size_t count) |
| 从指针和长度创建视图(常量版本)。 | |
提供容器的非拥有视图(View),支持区间切片和便捷的工厂函数。
View 类是一个轻量级的容器视图,不复制数据,仅保存一对迭代器。 支持范围 for 循环、下标访问、边界检查的 at() 方法,以及 collect() 复制数据到新容器。 同时提供工厂函数 make_view 简化 View 对象的创建。