template的小知识(豆包解释版)
·
template 就是“通用模具”,能同时给 int、double、string 用。
基础版:带一个参数

注释:按< >里面给的类型去区分,T就会转变成为那一个类型
进阶版:两个参数(可以更多,用逗号分隔开)

注释:< >按类型顺序分配T1,T2
实操版: const迭代器举例

Q: 开两个参数的意义在哪?
A:
第一个选项 T :决定这个迭代器要处理的元素类型(比如是存整数、字符串,还是自定义的类)。
第二个选项 Ref :决定迭代器解引用后返回的权限类型(是能修改元素,还是只能读)。
所以
如果只给一个参数,就没法同时控制“装什么”和“能不能改”这两个需求。
用两个参数,就能用同一个模板,同时实现“普通迭代器(能改)”和“const迭代器(只读)”,不用写两份几乎一样的代码。
更多推荐



所有评论(0)