X

曜彤.手记

随记,关于互联网技术、产品与创业

C++ 小记录

已经不写 C++ 好多年,主要是由于自己只用 C++ 来练习算法,而且其在业务和日常开发的应用场景又过于狭窄,所以慢慢的很少去写了。不过由于最近几个月一直在开发 Eufa 相关的功能,C++ 又被我捡回来了。这里记录一些遇到的 C++ 相关知识点。

  1. ANSI C(C99) 变量名的有效长度为 63 位;
  2. 类似 “__LONG_LONG_MAX__” (climits) 等由一个或两个下划线加大写字母组成等变量名一般用于留给编译器使用,作为保留的全局标示符号;
  3. 新的赋值语句:
int x(10);
int x = {10};
int x{10};
  1. 切换 cout 的数字显示格式: std::cout << std::hex; \ std::cout 2202LL << 2202UL << std::endl;
  2. 数字常量存储规则:
  • 十进制:int/long/long long;
  • 八/十六进制:int/unsigned (int) long/long long/unsigned long long;
  1. char 在默认情况下既不是有符号的也不是没有符号的,因此默写情况需要详细指定其类型;
  2. 宽字符集,占用2个字节:
wchar_t bob = L'P';
std::wcout << L"tall" << std::endl;

char16_t ch1 = u'q';
char32_t ch2 = U'U0000222B';
  1. float 类型一般只有6-7位精度,double 一般有15位左右的精度;
  2. “std::cout” 定点输出:
std::cout.setf(ios_base::fixed, ios_base::floatfield);
  1. auto 关键字,自动类型推导:
std::vector<double> scores = {};
auto pv = scores.begin();
  1. 数组初始化:
double earnings[2] {1.2e4, 1.6e4};
unsigned int counts[10] = {};



评论 | Comments


Loading ...