也可用模板函数get(t)来直接取得tuple的元素, 这里index是所需的序号, t是目标tuple
在Variadic Templates还没有的时候, tuple是由大量嵌套的define...版本的构造函数, 然后分为以下情况:
目标对象有定义initializer_list版本的函数, 调用
目标对象没有定义initializer_list版本的函数, 查看当前的initializer_list...与现有的普通函数是否匹配, 如果匹配(也就是和()一致时)则调用, 否则编译失败
两个版本的函数同时存在, 优先调用initializer_list版本的函数
当使用()进行调用时, 则只能使用普通版本的函数调用...当在构造函数中使用, 代替()但没有指明参数时, 会进行默认构造, 即使是基本类型也会被默认构造为0
initializer_list的本质是一个数组, 其类中的成员是指向数组的迭代器和记录initializer_list...当异常在noexcept抛出时会调用std::terminate()
override用于虚函数, 在派生类中写出, 标明了派生类目前是要覆写基类的同名虚函数, 当派生类没有这个接口覆写的时候会编译失败