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

做网站编辑应该注意什么百度排名点击

做网站编辑应该注意什么,百度排名点击,哪家代理注册公司好,导航网页一 类模板 template <class T或者typename T> class 类名 { .......... } 1.1 两种不同的实现 在以下的两种实现中,其实第一种叫做成员函数模板&#xff0c;并不能称为类模板因为这种实现,我们在调用时,并不需要实例化为Product这个类指定指定特定类型。 // 实现1 clas…

一 类模板

template <class T或者typename T>

class 类名

{

..........

}

1.1 两种不同的实现

  • 在以下的两种实现中,其实第一种叫做成员函数模板,并不能称为类模板
  • 因为这种实现,我们在调用时,并不需要实例化为Product这个类指定指定特定类型。
// 实现1
class Product
{
public:template<typename T>void setProduct(const T& t){qDebug()<<t;}
};
  • 但下面这种实现才是真正的类模板实现
  • 这种的问题是每次实例化都必须指定类型T,这意味着每个 ProductA 实例都绑定到了一个特定类型上。
template<typename T>
class ProductA
{
public:void setProduct(const T& t){qDebug()<<t;}
};
ProductA<int> procduct;
procduct.setProduct(10);

1.2 优缺点

  • 如果你需要一个类能够处理多种不同类型的数据,并且这些数据类型在设计时是未知的,那么 示例 1 更加合适。
  • 如果你需要一个类只处理一种特定类型的数据,并且希望在类的设计时就明确这一点,那么 示例 2 更加合适。

1.3 类模板类外定义

  • 声明
template<typename T>
class SumTemplate
{
public:T sum(T a, T b);T max(T a, T b);
};
  • 定义:在定义时不但要加载类名的限定符,还要声明模板参数,以及传递模板参数
template<typename T>
T SumTemplate<T>::sum(T a, T b)
{return a + b;
}template<typename T>
T SumTemplate<T>::max(T a, T b)
{return a > b ? a : b;
}

1.4 模板类

  • 实例化的模板也就是模板类,模板类是一个由模板生成的类
    SumTemplate<int> templateA;qDebug()<<templateA.sum(1024,1024);qDebug()<<templateA.max(1024,512);SumTemplate<float> templateB;qDebug()<<templateB.sum(1024,1024);qDebug()<<templateB.max(1024,512);

二 模板类定义不能定义在cpp中

  • 如果我们将模板类定义在cpp中,那么我们就会遇到未定义的错误行为
  • 对于模板类的函数声明和实现必须放在同一个.h里面

2.1 原因 

  • 延迟实例化: 首先当编译器遇到类模板的声明时,并不会为这个类模板创建任何的代码,因为类模板的实例化是在调用它时才会产生对应的代码。
  • 如果成员函数定义位于类模板定义之外,比如在另一个 .cpp 文件中,那么就需要显式地实例化这些成员函数。这是因为编译器在处理模板类实例化时,需要知道成员函数的实现细节。如果没有显式实例化,编译器可能无法找到这些成员函数的定义。(也就是在编译阶段无法知道函数的具体细节)
  • 当成员函数定义直接放在类模板的定义中时,编译器可以在任何实例化该模板类的地方看到这个成员函数的定义。这种方式下,不需要显式实例化成员函数,编译器会在需要的时候自动生成特定类型的版本。

2.2 解决

  • 我们可以提前在.cpp里面显示指定模板类的类型,但这种方式不推荐使用
template class SumTemplate<int>;
template class SumTemplate<float>;

http://www.shuangfujiaoyu.com/news/49239.html

相关文章:

  • 网站切图企业查询信息平台
  • 无锡江阴做网站公司百度贴吧官网首页
  • 四平网站建设有哪些长沙关键词排名首页
  • 个人可以网站备案吗十大新媒体平台有哪些
  • 博远手机销售管理系统app广告优化师工资一般多少
  • 做电商网站前端用什么框架今天国内新闻
  • 做网站为什么赚钱吗软文广告经典案例300字
  • 武昌网站建设价格多少钱网站推广优化技巧
  • 网站的支付接口对接怎么做seo宣传网站
  • 河北省建设机械协会网站搜外网
  • 网站建设情况的汇报郑州网站建设外包
  • 网站开发工作怎么样奉化首页的关键词优化
  • 浙江省建设银行网站首页网站搭建工具
  • 携程网站用js怎么做广州seo推广培训
  • 义马网站建设电话百度公司名称
  • 高端网站建设策划口碑营销策划方案
  • 做厂家批发的网站信息流优化师职业规划
  • wordpress头像网站搜索引擎优化的概念是什么
  • Wordpress主题 程序员镇海seo关键词优化费用
  • jsp 网站开发例子百度移动点击排名软件
  • 精品课程网站建设意义搜狗seo软件
  • 哪个网站能在家做兼职公司培训
  • 公安局网站不备案吗外链推广论坛
  • 做电影解析网站文库百度登录入口
  • 国外产品推广平台天津谷歌优化
  • 网站有那些风格湖南网站推广
  • 网站改名工信部需要怎么做做网络推广的团队
  • 视频网站点击链接怎么做浙江seo外包费用
  • 网站服务器租用哪家好app注册推广拉人
  • 如何做门户网站完美日记网络营销策划书