标准库拾遗
约 314 个字 16 行代码 预计阅读时间 1 分钟
Abstract
C++标准库里面其实内容很丰富,有好些东西长期不用容易忘,以及随着C++标准迭代,标准库正变得越来越庞大
iomanip
std::setw(int n)
:设置输出的宽度为n
个字符。std::setprecision(int n)
:设置浮点数的精度,表示小数点后保留n
位。std::fixed
和std::scientific
:设置浮点数的输出格式为定点格式或科学计数法。std::setfill(char c)
:设置填充字符,用于在输出宽度不足时填充。
exception
类型excption仅仅定义了拷贝构造函数、拷贝赋值运算符、一个虚析构函数和一个名为what的虚成员。其中what函数返回一个const char* 类型的指针,并且确保不会发生任何异常。当然在它的基础上继承出异常类型。比如下面这个例子:
if(item1.isbn()!=item2.isbn())
throw runtime_error("Data must refer to same ISBN");
//runtime_error 是标准错误类型的一种,继承自 exception
cout << item1 + item2 << endl;
utility
- pair
- tuple
memory
- alloctor
- smart pointer
limits
#include <iostream>
#include <limits>
int main() {
std::cout << "int 类型的最大值: " << std::numeric_limits<int>::max() << std::endl;
std::cout << "int 类型的最小值: " << std::numeric_limits<int>::min() << std::endl;
std::cout << "double 类型的最大值: " << std::numeric_limits<double>::max() << std::endl;
std::cout << "double 类型的最小值: " << std::numeric_limits<double>::min() << std::endl;
return 0;
}