c++【复习篇】: 模板

友元函数:

  • 友元全局函数
  • 友元成员函数

关键字:friend。

友元全局函数:

youyuan

使用时直接访问私有成员、 传入对象名而非地址。

友元成员函数:


友元类:
friend+类名

  • 友元关系不可传递
  • 友元关系的单向性
  • 友元声明的形式及数量不受限制。
  • 友元只是封装的一个补充

静态:不隶属于类。

  • 静态的数据成员
  • 静态的成员函数

静态数据成员必须单独初始化。【类外】

静态成员函数不能调用非静态成员函数和非静态数据成员。

非静态的成员函数可以调用静态的数据成员和成员函数。

静态数据成员只有一份,不依赖对象而存在。


运算符重载:

本质:函数重载。

关键字:operator

友元函数的重载、成员函数的重载。

成员函数运算符丶重载:

友元函数运算符丶重载:

二元运算符重载:和上面差不多。

<<号运算符重载:

输出运算符不可以采用成员函数重载。

[]索引运算符重载:

也不能采用成员函数重载。


函数模板

类似java和其他语言中的泛型。

关键字:template typename class

这里的class不是用来定义类而是表明数据类型的。

上面是函数模板,

main中的调用处是模板函数。

变量作为模板的参数:

当有多个参数:

函数模板还可以重载。。。


类模板:

发布了288 篇原创文章 · 获赞 40 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/qq_39969226/article/details/104085392