GeekBand C++第四周学习感悟

这周主要介绍了以下部分的内容

1.转换函数 当我们碰到分数要和实数相加时,要使用转换函数将分数先转换成实数

侯老师在课上主要讲了以下几个要点:

(1)

GeekBand C++第四周学习感悟_第1张图片

当出现fraction d2=f+4时,会自动调用上面的构造函数,将4初始化为4/1 如果不想出现这种情况要在构造函数前加explicit

GeekBand C++第四周学习感悟_第2张图片

(2)

当出现以上情况时,编译器不知道是将分数先转换成实数,还是先将实数转换成分数,会出现模拟两可的情况

2.智能指针和仿函数

关于智能指针和仿函数这块听的有点不太懂 先留点疑问,希望侯老师后面能详细的解读

3.模板

本周侯老师重点讲了模板的内容,比起之前,补充了不少知识

之前我们大概接触了函数模板,类模板和成员模板。侯老师这周补充了模板特化,模板偏特化和模板模板参数等知识模板为什么要特化,因为编译器认为,对于特定的类型,如果你能对某一功能更好的实现,那么就该听你的。特化分为全特化与偏特化。全特化就是限定死模板实现的具体类型,偏特化就是如果这个模板有多个类型,那么只限定其中的一部分。其中模板偏特化分为个数的偏和范围的偏 模板模板参数是说将模板中的参数也模板化。

4.

三种特性

侯老师讲了新标准的三种特性

auto 使用auto 编译器将根据返回类型来判断数据类型 要注意的是不能先用auto 声明再赋值。

数量不定的模板 主要是用递归的方法实习,令人印象深刻

第三个是ranged-base for

5.最后侯老师讲了引用到底是什么 其实说白点引用就是一种const的指针。

你可能感兴趣的:(GeekBand C++第四周学习感悟)