August 2021
Intermediate to advanced
450 pages
5h 35m
Chinese
令人惊讶的是,为类型或模板引入代名词常常是很有用的。例如,标准头文件<cstddef>包含了别名size_t的定义,可能如下:
size_t的实际类型是依赖于实现的,因此在另一个实现中size_t可能是一个unsigned long。有了别名size_t,程序员就可以编写出可移植的代码。
对参数化类型来说,一种非常常见的方式是为与模板实参相关的类型提供一个别名。例如:
实际上,每个标准库容器都会提供一个value_type作为其值类型的名字(参见第11章)。这令我们可编写出能用于任何遵循这种规范的容器的代码。例如:
通过绑定一些或所有模板实参,别名机制可以用来定义一个新模板。例如:
Read now
Unlock full access