- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅谈C#泛型和C模板
2008年03月 内蒙古民族大学学报 Mar.2008
箜!生鲞筮兰翅 &婴坐堕!旦里竺丛竺翌gQ!i垒旦翌i!璺望血堑塑堑Q望堂尘塑 !尘:!兰丛旦:兰
浅谈C#泛型和C++模板‘
张玉春1,程春英1,李海峰2
(1.内蒙古民族大学数学与计算机科学学院,内蒙古通辽028043;
2.内蒙古煤炭工业技术学校,内蒙古通辽028021)
[摘要]表面上C#泛型的语法看起来与C++模板类似,但是编译器实现和支持它们的方式存
在重要差异.本文针对C++模板和C#泛型进行了一系列比较,探讨了它们之间存在的不同,以便能
更好的理解它们之间的差异性.
[关键词]饼泛型;cI+模板;类型约束
[中图分类号]TP313[文献标识码]A [文章编号]1008—5149(2008)02—0051—02
C#泛型和c++模板都是用于提供参数化类型支持 c#的泛型支持包括类、结构、接口、委托共四种泛型类
的语言功能.然而,这两者之间存在许多差异.在语法层面 型,以及方法成员.C群的泛型采用”基类,接口,构造器,值
上,c#泛型是实现参数化类型的更简单方法,不具有c+类型/7l用类型”的约束方式来实现对类型参数的“显式约
束”,它不支持c++模板那样的基于签名的隐式约束。
+模板的复杂性.此外,c群并不尝试提供c++模板所提
供的所有功能.在实现层面,主要区别在于,c#泛型类型替 使用c#泛型,编译器会将一般代码编译为中问语言,
换是在运行时执行的,从而为实例化的对象保留了泛型类 而不管客户端将使用什么样的类型实参.如果一般代码使
型信息。 用与客户端使用的特定类型实参不兼容的一般类型参数的
泛型是指通过参数化类型来实现在同一份代码上操作 方法、属性或成员的话,它相当于缺少类型安全。在c#
多种数据类型,是指具有在多种数据类型上皆可操作的含 中,您需要通知编译器客户端指定的类型必须遵守那些约
义,与模板有些相似。 束,以便使它们能够取代一般类型参数而得以使用.c#泛
c++模板是所有版本STL中的基础.有了模板,就不型存在三个类型的约束:
必分别为整数数组、实数数组等不同的数据类型编写数组 (1)派生约束是指示编译器一般类型参数派生自诸如
类,而是编写一个通用的数组类模板.模板为软件行业实现 接口或特定基类之类的基类型。
了软件复用。标准模板库是C++标准程序库的中心,它 (2)默认构造函数约束是指示编译器一般类型参数公
采用泛型程序设计思想,深刻影响了标准程序库的整体结 开了默认的公共构造函数(不带任何参数的公共构造函
构和组成。 数)。
1 C#泛型 (3)引用/值类型约束是将一般类型参数约束为引用类
通过C#泛型我们可以定义类型安全的数据结构,而无 型或值类型.一般类型可以利用多个约束,甚至可以在使用
须使用实际的数据类型。这能够显著提高性能并得到更高 一般类型参数时使IntelliSense反射这些约束。例如,建议
质量的代码,因为可以重用数据处理算法,而无须复制类型 基类型中的方法或成员。
特定的代码。 需要注意的是,尽管约束是可选的,但它们在开发一般
c撑的泛型能力由CLR在运行时支持,它既不同于C+类型时通常是必不可少的。没有它们,编译器将采取更为保
+在编译时所支持的静态模板,也不同于Java在编译器层守的类型安全方法,并且只允许在一般类型参数中访问
面使用“搽拭法”支持的简单的泛型。 Object级别功能.约束是一般类型元数据的一部分,以便客
您可能关注的文档
最近下载
- 农村生活污水改造工程-施工设计方案.doc VIP
- 昆明市筇竹寺地区地质填图精讲.doc VIP
- (完整word版)新概念英语第3册课文word版.pdf VIP
- 菲律宾结构设计规范NSCP chapter 4c.pdf VIP
- D-Z-T 0405-2022 无人机航空磁测数据采集技术要求(正式版).docx VIP
- 高层住宅水电暖安装工程的组织与实施计划.docx VIP
- 破壁料理机食谱大全奥克斯篇.pdf VIP
- 金航联执业药师继续教育《功能性消化不良的中西药治疗策略》习题答案.docx VIP
- 2025年华医网继续教育CRRT在急诊重症患者中的临床应用答案.docx VIP
- 菲律宾结构设计规范NSCP chapter 4b.pdf VIP
文档评论(0)