当前位置: 首页 > news >正文

幽灵按钮网站android软件开发工具

幽灵按钮网站,android软件开发工具,王磊网络网站建设,设计的软件都有什么一、类模板与继承 当类模板碰到继承时,需要注意一下几点: 1.当子类继承的父类是一个类模板时,子类在声明的时候,要指定出父类中T的类型 2.如果不指定,编译器无法给子类分配内存 3.如果想灵活指定出父类中T的类型&a…

一、类模板与继承

当类模板碰到继承时,需要注意一下几点:

1.当子类继承的父类是一个类模板时,子类在声明的时候,要指定出父类中T的类型

2.如果不指定,编译器无法给子类分配内存

3.如果想灵活指定出父类中T的类型,子类也需变为类模板

#include<iostream>
using namespace std;//类模板与继承template<class T>
class Base
{T m;
};//class Son :public Base //错误,必须要直到父类中的T类型(分配内存),才能继承给子类
class Son :public Base<int>//必须指定一个类型
{};void test01()
{Son s1;
}//如果想灵活指定父类中T类型,子类也需要变类模板
template<class T1,class T2>
class Son2 :public Base<T2>
{
public:Son2(){cout << "T1的类型为: " << typeid(T1).name() << endl;cout << "T2的类型为: " << typeid(T2).name() << endl;}T1 obj;
};void test02()
{Son2<int, char>s2;
}int main()
{test01();test02();return 0;
}

二、 类模板成员函数类外实现

#include<iostream>
using namespace std;
#include<string>//类模板成员函数类外实现
template<class T1, class T2>
class Person
{
public:Person(T1 name, T2 age);//类内声明//{//	this->m_Name = name;//	this->m_Age = age;//}void showPerson();//类内声明//{//	cout << "姓名: " << this->m_Name << " 年龄: " << this->m_Age << endl;//}T1 m_Name;T2 m_Age;
};//构造函数 类外实现
template<class T1, class T2>
Person<T1, T2>::Person(T1 name, T2 age) 
{this->m_Name = name;this->m_Age = age;
}//成员函数 类外实现
template<class T1, class T2>
void Person<T1, T2>::showPerson()
{cout << "姓名: " << this->m_Name << " 年龄: " << this->m_Age << endl;
}void test()
{Person<string, int>P("Tom", 20);P.showPerson();
}int main()
{test();return 0;
}

总结:类模板中成员函数类外实现时,需要加上模板参数列表 

三、类模板全局函数的类内类外实现

全局函数类内实现 - 直接在类内声明友元即可

全局函数类外实现 - 需要提前让编译器知道全局函数的存在

#include<iostream>
using namespace std;
#include<string>//通过全局函数来打印 Person 信息//提前让编译器知道 Person 类的存在
template<class T1, class T2>
class Person;				//类外实现	函数模板的实现
template<class T1, class T2>
void printPerson2(Person<T1, T2>p)
{cout << "类外实现---姓名: " << p.m_Name << " 年龄: " << p.m_Age << endl;
}template<class T1,class T2>
class Person
{//全局函数 类内实现friend void printPerson1(Person<T1, T2>p){cout << "姓名: " << p.m_Name << " 年龄: " << p.m_Age << endl;}//全局函数 类外实现(类内声明,类外实现)//加空模板参数列表--->函数模板的声明//如果全局函数是类外实现,需要让编译器提前知道这个函数的存在friend void printPerson2<>(Person<T1, T2>p);无尖括号则为普通函数的声明public:Person(T1 name, T2 age){this->m_Name = name;this->m_Age = age;}private:T1 m_Name;T2 m_Age;
};//1.全局函数在类内实现
void test01()
{Person<string, int>p("Tom", 18);printPerson1(p);
}//2.全局函数在类外实现
void test02()
{Person<string, int>p("Jerry", 18);printPerson2(p);
}int main()
{//test01();test02();return 0;
}

总结:建议全局函数做类内实现,用法简单,而且编译器可以直接识别

http://www.yayakq.cn/news/27326/

相关文章:

  • 苏州电信网站备案想学网站设计
  • 建站基础济南建设项目竣工验收公示网站
  • express做静态网站wordpress企业新闻
  • 一级A做爰片安全网站企业服务云
  • 急招大龄工45到55岁优化大师 win10下载
  • 那个网站做网站托管做手机网站的重要性
  • 深圳市企业网站建设哪家好码云可以做博客网站吗
  • 网站开发商可以代刷好评吗制作公司网站价格
  • 哪些网站可以做兼职设计师网站建设公众
  • 有哪些做软件的网站百度权重怎么查询
  • 商城网站的建设房地产做网站
  • 定制网站制作技术免费建网站平台哪个好
  • 网站建设歺首选金手指14服务器租用哪家好而且便宜
  • 官方网站怎么制作wordpress最简洁主题
  • c 做精品课程网站一级a做爰片免费网站 视频
  • 做分类网站用什么cms怎样维护自己的网站
  • asp网站搭建软件做网站的题目
  • 史志网站建设必要性广州企业模板建站
  • 福州服务专业公司网站建设网络游戏投诉找哪个部门
  • 网站无法访问做外贸的收入一般多少
  • wordpress 多站点 子目录彩票网站的代理怎么做
  • wordpress后台账号密码网站建设和优化内容最重要性
  • 音乐网站建设的开发平台网站案例模版
  • 厦门服装商城网站建设制作公司网站要多少费用呢
  • 广告网站制作多少钱跨境电商app有哪些
  • 个人网站如何搭建vs2013 手机网站开发
  • 苏州建设监督网站少儿编程加盟店排名
  • 做流量网站怎么做wordpress首页阅读全文
  • 装修公司做网站台州企业网站搭建图片
  • 济南网站建设新风向电商网站开发合同