类模板中友元函数的定义

您所在的位置:网站首页 函数的定义通俗易懂 类模板中友元函数的定义

类模板中友元函数的定义

2023-05-19 15:41| 来源: 网络整理| 查看: 265

类模板

文章目录 声明成员函数友元函数类模板内实现重新定义一个函数模板

声明

类模板的声明语法如下

template class className { //TODO; }

这里面的typename相当于一种正常的类型参数,是在使用该类的时候声明的,在类中可以看作一个正常的内置类型来使用。

typename也可以用class进行替换

类模板不同于函数模板的地方在于,可以同时拥有类型参数(如class Elem)和表达式参数(如unsigned Size),表达式参数可以是如下的类型:

具有整型或枚举的值指向对象的指针或到对象的引用指向函数的指针或到函数的引用指向类成员函数的指针

同时含有类型参数和表达式参数的类举例

template class matrix { private: Elem** data; //这里把类型参数像内置类型一样使用 public: matrix(); //无参构造函数,调用了row和col }; typename //因为下面的函数定义用到了模板变量,这里要进行声明 matrix() { data = new Elem*[row]; //声明了一个二维数组,行和列用的是表达式参数,可以看到表达式参数的使用和使用常量是比较类似的 for(int i = 0; i for(int i = 0; i private: Elem** data; //这里把类型参数像内置类型一样使用 public: matrix(); //无参构造函数,调用了row和col friend ostream& operator for (int j = 0; j for (int i = 0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3