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

公司建网站搭建服务器免费网站正能量入口下载

公司建网站搭建服务器,免费网站正能量入口下载,南阳做网站aokuo,上海企业一户式查询文章目录 泛型编程函数模版模版参数的匹配原则类模版类模版的定义格式类模版的实例化 总结 泛型编程 泛型编程是一种编程范式#xff0c;旨在实现通用性和灵活性。它允许在编写代码时使用参数化类型#xff0c;而不是具体的类型#xff0c;从而使代码更加灵活和可重用。 在… 文章目录 泛型编程函数模版模版参数的匹配原则类模版类模版的定义格式类模版的实例化 总结 泛型编程 泛型编程是一种编程范式旨在实现通用性和灵活性。它允许在编写代码时使用参数化类型而不是具体的类型从而使代码更加灵活和可重用。 在泛型编程中代码可以被编写为与特定类型无关的形式而是被设计成适用于多种类型。这使得同一段代码可以用于处理各种不同类型的数据而无需为每种类型编写单独的代码。 举例 在C语言中我们要交换两个数我们需要写一个swap函数但是如果我们需要交换多个不同类型的数那就要写多个swap函数那么这样大大降低了我们编程的效率所以在C中我们引入了泛型编程的概念不管是函数还是类我们都可以用一个模版来定义我们需要用什么类型的参数直接替换就可以了这样大大增加了我们编程的效率。 比如上面这张图就是一个磨具他为我们定好了形状但是我们需要什么口味需要什么食材都是我们自己定的这就是模版。 函数模版 函数模板Function Template是C中的一种机制允许你编写通用的函数能够处理多种不同类型的数据而不需要针对每种类型写不同的函数。函数模板使用了泛型编程的思想使得代码更加灵活和可重用。 举例 templatetypename T void Swap( T left, T right) {T temp left;left right;right temp; }上面代码就是一个函数模版一个函数家族我们可以指定任意类型进行交换但是我们不能用一个int类型和一个char类型进行交换因为当我们用一个int类型和一个char类型交换时编译器不知道T到底是改成char还是改成int所以这种情况下我们可以利用模版的显示实例化 举例 templateclass T T Add(T a, T b) {return a b; } int main(void) {int a 10;double b 20.0;// 显式实例化Addint(a, b);return 0; }既然模版有显示实例化必定就有隐式实例化下面我们来看看隐式实例化 举例 templateclass T T Add(T a, T b) {return a b; } int main(void) {int a1 10, a2 20;double d1 10.0, d2 20.0;Add(a1, a2);Add(d1, d2);return 0; }模版参数的匹配原则 1. 一个非模板函数可以和一个同名的函数模板同时存在而且该函数模板还可以被实例化为这个非模板函数。 // 专门处理int的加法函数 int Add(int left, int right) {return left right; } // 通用加法函数 templateclass T T Add(T left, T right) {return left right; } void Test() {Add(1, 2); // 与非模板函数匹配编译器不需要特化Addint(1, 2); // 调用编译器特化的Add版本 }2. 对于非模板函数和同名函数模板如果其他条件都相同在调动时会优先调用非模板函数而不会从该模板产生出一个实例。如果模板可以产生一个具有更好匹配的函数 那么将选择模板 #includeiostream using namespace std; templateclass T T add(T a, T b) {return a b; } int add(int a, int b) {return a b; }int main() {int a, b;cin a b;int sum add(a, b);return 0; }从下面结果看可以看见当模版存在时非模版最匹配时编译器会优先匹配非模版的函数 3. 模板函数不允许自动类型转换但普通函数可以进行自动类型转换 类模版 类模版的定义格式 templateclass T1, class T2, ..., class Tn class 类模板名 {// 类内成员定义 }; 类模版的实例化 我们先定义一个类 templateclass T class list { public: private:T* _a;int _size;int _cpacity; };我们来进行类的实例化 int main() {listint l1;listchar l2;return 0; }总结 当模板被介绍到C中时它们彻底改变了编程的方式。函数模板和类模板为我们提供了一种通用的方法来编写代码使得我们可以编写更加灵活、可重用的程序。通过使用模板我们可以编写与特定类型无关的代码从而提高了代码的灵活性和可维护性。函数模板允许我们编写可以处理多种类型的函数而类模板则允许我们创建可以处理多种类型数据的类。在编写模板时我们可以利用C的强大类型系统来确保类型安全并通过模板参数推断简化代码。总的来说函数模板和类模板为我们提供了一种强大的工具使得我们能够更加轻松地编写通用、高效的代码。
http://www.zqtcl.cn/news/18024/

相关文章:

  • 罗湖附近公司做网站建设哪家好域名跟空间都有了怎么做网站
  • 网站查询访问域名调用wordpress数据
  • 微网站开发公司h5网页版制作
  • 手机网站模板cms泸州中泸集团建设有限公司网站
  • 电子商务网站的建站目标东莞做网站dgjcwl
  • asp网站的配置wordpress强制分享代码
  • 怎么给餐饮店做网站做个购物网站
  • 怎样手机做网站教程什么软件可以搜索关键词精准
  • 网站建设1影响力公司wordpress无法用ftp
  • 网站设计的硬件邢台招聘网最新招聘信息
  • 建e网app下载宁波信誉好全网seo优化
  • 小企业网站建设怎样可以快速自己的服务器做网站域名解析
  • 做分析图地图网站大连建设网交费查询
  • 做第三方库个人网站长沙房产网二手房
  • 最优秀的佛山网站建设免费linux云服务器
  • 在哪可以找到网站棋牌游戏网站怎么做的
  • 布吉网站建设哪家效益快三网站建设
  • 云南网站制作一条龙个人网页开发毕业设计
  • 网站建设注册什么公司好免费网站空间免费主机
  • 网站维护费计入什么科目pc网站建设需要提供哪些资料
  • 做电影网站要怎么拿到版权简述一下网站的设计流程
  • 昆山周市建设局网站wordpress 论坛模版
  • 特优项目网站建设方案网站建设百度帖吧
  • 上海市工程建设信息网官方网站深圳电子厂
  • 手机模板网站模板下载什么是网络营销推广
  • 公司网站百度排名没有了地推网
  • 网站的开发工具和运行环境广西建设厅网站绿色建筑标识
  • 做国外网站有哪些网站开发上海工资
  • 线切割加工东莞网站建设技术支持查关键词排名软件
  • 用html5做网站的优点南京广告宣传公司seo