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

wordpress主题知更鸟lts南宁关键词优化软件

wordpress主题知更鸟lts,南宁关键词优化软件,什么是网络营销的综合性工具,青海网站建设哪家强简介#xff1a; CSDN博客专家#xff0c;专注Android/Linux系统#xff0c;分享多mic语音方案、音视频、编解码等技术#xff0c;与大家一起成长#xff01; 优质专栏#xff1a;Audio工程师进阶系列【原创干货持续更新中……】#x1f680; 优质专栏#xff1a;多媒… 简介 CSDN博客专家专注Android/Linux系统分享多mic语音方案、音视频、编解码等技术与大家一起成长 优质专栏Audio工程师进阶系列【原创干货持续更新中……】 优质专栏多媒体系统工程师系列【原创干货持续更新中……】 人生格言 人生从来没有捷径只有行动才是治疗恐惧和懒惰的唯一良药. 更多原创,欢迎关注Android系统攻城狮 1.前言 本篇目的Android14之深入理解模板类 2.介绍 C模板类是C编程语言中的一种特性它允许程序员定义能够处理任何类型数据的类。模板类是一种泛型编程的工具可以在不牺牲性能的情况下提供类型安全的代码。在C中模板类可以用于创建可重用的、通用的代码从而提高程序的可维护性和可扩展性。模板类的基本原理是模板参数。模板参数是一种特殊的参数它在类定义时使用用于指定类可以操作的数据类型。程序员可以在声明类时使用模板参数然后在创建类的实例时指定具体的类型。这样模板类就可以根据传入的类型参数生成相应的类实例从而实现对不同类型数据的处理。模板类的基本语法如下 template class T class ClassName { public:// 类成员函数和数据成员 };其中class T表示模板参数T是一个占位符表示传入的具体类型。ClassName是类的名称它可以是任何有效的C类名。模板类具有以下特点 类型安全模板类通过编译时类型检查确保类型安全。在创建模板类的实例时编译器会检查模板参数是否合法并生成相应的类实例。这可以防止在运行时出现类型错误。泛型编程模板类允许程序员编写通用的代码可以处理多种数据类型。这有助于减少代码冗余提高程序的可维护性和可扩展性。性能模板类在编译时生成具体的类实例因此在运行时不会产生额外的性能开销。模板类的设计目标是在不牺牲性能的情况下提供类型安全的代码。兼容性模板类可以与常规类混合使用。程序员可以在同一个项目中同时使用模板类和非模板类以满足不同的编程需求。继承模板类可以被继承。子类可以继承模板类的特性并可以添加新的功能或修改现有功能。这使得模板类可以作为基类为子类提供通用的功能。 举个例子以下是一个简单的模板类用于计算两个数值的和的平方 template class T class SumSquare { public:T operator()(T a, T b) {return (a b) * (a b);} };在这个例子中SumSquare是一个模板类它接受两个类型为T的参数a和b并返回它们的和的平方。程序员可以在创建SumSquare的实例时指定具体的类型例如 int result SumSquareint(3, 4); // 创建 SumSquareint 的实例计算 3 4 的和的平方 double result SumSquaredouble(3.0, 4.0); // 创建 SumSquaredouble 的实例计算 3.0 4.0 的和的平方总结起来C模板类是一种强大的编程工具它提供了类型安全、泛型编程、性能和兼容性等优点。通过使用模板类程序员可以编写可重用、通用的代码提高程序的可维护性和可扩展性。 3.代码实例 1.Android智能指针sp用法实例 #include utils/Log.h #include string #include iostream #include utils/RefBase.husing namespace std;class BB : public android::RefBase { public:BB() {} };int main() {//v1.0 android::spBB bb NULL;//bb.get() NULLprintf(xxx---------------%s, %s(), line %d, bb.get() %p\n,__FILE__,__FUNCTION__,__LINE__,bb.get());//v2.0android::spBB b1 new BB();printf(xxx---------------%s, %s(), line %d, b1.get() %p\n,__FILE__,__FUNCTION__,__LINE__,b1.get());return 0; } v1.0传入空指针 v2.0传入实际类对象 2.自定义模板类实现深入理解Android模板类sp的实现 #include memory #include iostream using namespace std;template typename T class Base { public://1.模板类构造函数,传给模板类成员变量m_ptr.Base(T *other) : m_ptr(other){}//2.返回真正类的对象.T* get(){printf(xxx---------------%s(), line %d, m_ptr %p\n,__FUNCTION__,__LINE__,m_ptr);return m_ptr;}private:T *m_ptr; };class BB : public BaseBB{ public://v1.0 不能使用默认构造函数,因为需要显示告诉Base模板类自己需要的类型,如果使用默认构造函数,它无法正确初始化基类,它不知道传递什么参数给基类的构造函数Base.//BB(){}//v2.0 传this,尚未完全构造的BB对象地址,this指针总是指向有效的BB对象,基类Base只是简单地存储了这个指针,并不进行任何依赖于对象完全构造的操作.BB() : BaseBB(this){}void print(){printf(xxx---------------%s(), line %d\n,__FUNCTION__,__LINE__);} };int main(void) {//v1.0: 模板类BaseBB接收空指针NULL.BaseBB b1 nullptr;//or//BaseBB b1 BaseBB(nullptr);cout b1.get() b1.get() endl;//v2.0: 将BB类实例化对象传入模板类BaseBB.BaseBB b2 new BB();//Or//BaseBB b2 BaseBB(new BB);cout b2.get() b2.get() endl;//1.b2:表示模板类BaseBB对象//2.b2.get():表示模板类存放的BB实际类的指针对象.//3.b2.get()-print():表示调用模板类中BB类的成员函数print().b2.get()-print();//4.free BB实际对象.delete b2.get();//错误:BB类型的对象而不是一个指针,不能使用delete来释放它.//delete b2;return 0; } 注释已经很详细就不多说了。
http://www.pierceye.com/news/12573/

相关文章:

  • 网站建设课程教学计划瑞郎网络
  • 哈尔滨制作企业网站产品开发过程
  • 微信公众号绑定网站楚雄做网站
  • 建网站要多少钱一台网站建设开发的条件
  • 北京金融网站建设建筑工程有限公司招聘信息
  • 诺盾网站建设电脑城网站开发需求分析
  • 免费网页游戏在线玩上海搜索引擎优化1
  • php网站建设入门教程河南郑州网站设计公司
  • 济南营销网站制作公司哪家好沈阳网站设计制作公司
  • python做的网站漏洞一个网站seo做哪些工作内容
  • 许昌做网站九零后关键词怎么优化
  • 怎么做网站导航一个网站的建设步骤
  • 哪个网站服务器比较好网站建设需要钱吗
  • wordpress可以放视频吗网站评价及优化分析报告
  • 电子商务网站建设与运维论文网站后台发了文章看不到
  • 做网站的是哪类公司网站更换域名注意事项
  • 局网站建设总结wap网站是什么意思
  • 网站网站建设专业网站站内推广怎么做
  • 在线做网站教程上海制作企业网站
  • 珠海网站设计公司潍坊建设网站公司电话
  • 网站seo课设云虚拟主机免费
  • 北京城乡建设网站首页网站二级目录怎么做
  • 网站建设设计平台网页类网站
  • mysql php网站开发网站建设前端和后端的区别
  • 东莞网站建设环保设备有没有做门店设计的网站
  • 誉铭摄影网站北京网络推广平台
  • 做学校网站用什么模版国外便宜的云服务器
  • 如何seo搜索引擎优化廊坊视频优化方案
  • 网站设计背景图片怎么做的新开传奇网站曾劲松
  • 乐从容桂网站建设网站建设项目的预表