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

有用unity做网站的吗鞍山58同城二手房出售

有用unity做网站的吗,鞍山58同城二手房出售,企业网站空间在哪里,建设银行网站钓鱼网站类模板类模板是通用类的描述#xff0c;使用任意类型#xff08;泛型#xff09;来描述类的定义。使用类模板的时候#xff0c;指定具体的数据类型#xff0c;让编译器生成该类型的类定义。注意#xff1a;函数模板中可以不指定具体数据类型#xff0c;让编译器自动推到…类模板类模板是通用类的描述使用任意类型泛型来描述类的定义。使用类模板的时候指定具体的数据类型让编译器生成该类型的类定义。注意函数模板中可以不指定具体数据类型让编译器自动推到但是类模板不可以。注意模板编程不支持分离式编译即模板类/模板函数的声明与定义应该放在头文件里否则会在链接时报错template class T class 类模板名 {类的定义; };注意1在创建对象的时候必须指明具体的数据类型。2使用类模板时数据类型必须适应类模板中的代码。3类模板可以为通用数据类型指定缺省的数据类型C11标准的函数模板也可以。4模板类的成员函数可以在类外实现。5可以用new创建模板类对象。6在程序中模板类的成员函数使用了才会创建。下面给出示例#include iostream // 包含头文件。 using namespace std; // 指定缺省的命名空间。 template class T1, class T2 string class AA { public:T1 m_a; // 通用类型用于成员变量。T2 m_b; // 通用类型用于成员变量。AA() {} // 默认构造函数// 通用类型用于成员函数的参数。AA(T1 a, T2 b) :m_a(a), m_b(b) { }// 通用类型用于成员函数的返回值。T1 geta() // 获取成员m_a的值。{T1 a 2; // 通用类型用于成员函数的代码中。return m_a a;}T2 getb(); // 获取成员m_b的值。 };template class T1, class T2 T2 AAT1, T2::getb() // 获取成员m_b的值。 {return m_b; } int main() {AAint, string* a new AAint, string(3, 西施); // 用模板类AA创建对象a。cout a-geta() a-geta() endl;cout a-getb() a-getb() endl;delete a;return 0; }类模板全特化和部分特化模板类具体化特化、特例化有两种完全具体化和部分具体化。具体化程度高的类优先于具体化程度低的类具体化的类优先于没有具体化的类。具体化的模板类成员函数类外实现的代码应该放在源文件中。下面给出示例#include iostream using namespace std; // 类模板 templateclass T1, class T2 class AA { public:T1 m_x;T2 m_y;AA(const T1 x, const T2 y) :m_x(x), m_y(y) { cout 类模板构造函数。\n; }void show() const; }; templateclass T1, class T2 void AAT1, T2::show() const {cout 类模板x m_x , y m_y endl; } // 类模板特化 template class AAint, string { public:int m_x;string m_y;AA(const int x, const string y) :m_x(x), m_y(y) { cout 完全具体化构造函数。\n; }void show() const; };void AAint, string::show() const {cout 完全具体化x m_x , y m_y endl; } // 类模板部分特化 templateclass T1 class AAT1, string { public:T1 m_x;string m_y;AA(const T1 x, const string y) :m_x(x), m_y(y) { cout 部分具体化构造函数。\n; }void show() const; }; templateclass T1 void AAT1, string::show() const {cout 部分具体化x m_x , y m_y endl; } int main() {// 具体化程度高的类优先于具体化程度低的类具体化的类优先于没有具体化的类。AAint, string aa1(8, 张三); // 将使用完全具体化的类。AAchar, string aa2(8, 李四); // 将使用部分具体化的类。AAint, double aa3(8, 9666); // 将使用模板类。 }模板类于继承1模板类继承普通类常见。2普通类继承模板类的实例化版本。3普通类继承模板类。(常见)4模板类继承模板类。5模板类继承模板参数给出的基类不能是模板类。下面主要讲普通类继承模板类#include iostream using namespace std; templateclass T1, class T2 class BB { public:T1 m_x;T2 m_y;BB(const T1 x, const T2 y) : m_x(x), m_y(y) { cout 调用了BB的构造函数。\n; }void func2() const { cout 调用了func2()函数x m_x , y m_y endl; } };templateclass T1, class T2 class AA:public BBT1,T2 // 普通类AA变成了模板类才能继承模板类。 { public:int m_a;AA(int a, const T1 x, const T2 y) : BBT1,T2(x,y),m_a(a) { cout 调用了AA的构造函数。\n; }void func1() { cout 调用了func1()函数m_a m_a endl;; } };int main() {AAint,string aa(3,8, 我是一只傻傻鸟。);aa.func1();aa.func2();return 0; }模板类继承模板类#include iostream // 包含头文件。 using namespace std; // 指定缺省的命名空间。templateclass T1, class T2 class BB // 模板类BB。 { public:T1 m_x;T2 m_y;BB(const T1 x, const T2 y) : m_x(x), m_y(y) { cout 调用了BB的构造函数。\n; }void func2() const { cout 调用了func2()函数x m_x , y m_y endl; } };templateclass T1, class T2 class AA:public BBT1,T2 // 普通类AA变成了模板类才能继承模板类。 { public:int m_a;AA(int a, const T1 x, const T2 y) : BBT1,T2(x,y),m_a(a) { cout 调用了AA的构造函数。\n; }void func1() { cout 调用了func1()函数m_a m_a endl;; } };templateclass T, class T1, class T2 class CC :public BBT1, T2 // 模板类继承模板类。 { public:T m_a;CC(const T a, const T1 x, const T2 y) : BBT1, T2(x, y), m_a(a) { cout 调用了CC的构造函数。\n; }void func3() { cout 调用了func3()函数m_a m_a endl;; } };int main() {CCint,int,string cc(3,8, 芜湖);cc.func3();cc.func2(); }模板类继承模板参数给出的基类#include iostream // 包含头文件。 using namespace std; // 指定缺省的命名空间。class AA { public:AA() { cout 调用了AA的构造函数AA()。\n; }AA(int a) { cout 调用了AA的构造函数AA(int a)。\n; } };class BB { public:BB() { cout 调用了BB的构造函数BB()。\n; }BB(int a) { cout 调用了BB的构造函数BB(int a)。\n; } };class CC { public:CC() { cout 调用了CC的构造函数CC()。\n; }CC(int a) { cout 调用了CC的构造函数CC(int a)。\n; } };templateclass T class DD { public:DD() { cout 调用了DD的构造函数DD()。\n; }DD(int a) { cout 调用了DD的构造函数DD(int a)。\n; } };templateclass T class EE : public T { // 模板类继承模板参数给出的基类。 public:EE() :T() { cout 调用了EE的构造函数EE()。\n; }EE(int a) :T(a) { cout 调用了EE的构造函数EE(int a)。\n; } };int main() {EEAA ea1; // AA作为基类。EEBB eb1; // BB作为基类。EECC ec1; // CC作为基类。EEDDint ed1; // DDint作为基类。// EEDD ed1; // DD作为基类错误。 }
http://www.w-s-a.com/news/866517/

相关文章:

  • 邢台专业做网站哪家好临沂网站建设中企动力
  • 建设网站是主营成本吗wordpress 后台
  • 猎头可以做单的网站企业网站建设
  • 建小程序需要网站吗在putty上怎样安装wordpress
  • 天津智能网站建设找哪家WordPress相册插件pro
  • 电脑网站页面怎么调大小济宁网站建设软件开发
  • 亿玛酷网站建设广州增城区最新消息
  • 企业网站视频栏目建设方案中企动力网站模板
  • 网站页面策划国外注册域名的网站
  • 百中搜如何做网站排名网站维护一年一般多少钱
  • 镇江地区做网站的公司wordpress说说加分类
  • 深圳高端网站设计免费的关键词优化软件
  • 视频网站公司沈阳网站建设服务
  • 网站全屏代码做网站必须用对方服务器
  • 网站速度慢wordpressssl正式申请后wordpress
  • 那个网站做玉石最专业西瓜创客少儿编程加盟
  • 备案时的网站建设方案书免费软件库
  • 惠州外贸网站建设网站模板 兼容ie8
  • 南京淄博网站建设方案php网站开发实训感想
  • 网站设计的含义只做恐怖片的网站
  • 网站改版方案ppt室内装修公司简介
  • 做色网站wordpress twenty ten
  • 马鞍山建设工程监督站建管处网站免费的海报模板网站
  • 类似百度的网站移动端的网站怎么做的
  • 网站开发需要什么文凭网站分析的优劣势
  • 海尔网站建设不足之处山东网站营销
  • 楚雄 网站建设广告设计一般人能学吗
  • 热搜榜排名前十山东seo多少钱
  • 衡水哪有建网站的吗企业信息系统英文
  • 有模板怎么建站wordpress媒体库图片路径