[cpp]STL学习-move和forward

moveforwardcpp11引入的两个模板函数, move配合移动语义对应的函数(移动构造, 移动赋值)可以减少不必要的拷贝, 而forward可以完美的保留参数的特性, 从而实现预期的行为.


[cpp]语言基础

cpp语言的特点

  • cpp是一个语言联邦. 其是过程式语言(兼容包含c语言)、面向对象语言(有面向对象语言的封装、继承和多态的特点)、泛型语言(包含标准模板库STL, 有容器、迭代器、算法、适配器、仿函数和分配器)、函数式语言(cpp11引入匿名函数的特性)和元编程语言(TODO: 不懂).
  • cpp是不断发展的语言, cpp11、cpp14、cpp17、cpp20引入了很多新的特性.

[cpp]便捷的字符串分割方法

前言

不像python的str提供的内置split方法一样方便的进行字符串分割,c++的string模板库没有直接提供分割字符串的成员方法。偶然在看《c++prime》时看到string模板库提供getline方法, 利用方法可以实现自定义分隔符分割字符串。