博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#是类型安全的
阅读量:5326 次
发布时间:2019-06-14

本文共 657 字,大约阅读时间需要 2 分钟。

C++不是类型安全的,因为两个不同类型的指针之间可以强制转换。

而C#是类型安全的!

CLR一个很重要的特性就是Type安全。CLR在任何时候都知道某个对象的类型。你可以通过GetType方法获得,由于该方法不是虚函数,因此不能被覆盖,也就是说返回的值是永远真实的。

关于CLR(Common Language Runtime)

.NET提供了一个运行时环境,叫做公用语言运行时(Common Language Runtime),是一种多语言执行环境,支持众多的数据类型和语言特性。他管理着代码的执行,并使开发过程变得更加简单。这是一种可操控的执行环境,其功能通过编译器与其他工具共同展现。

 

  依靠一种以运行时为目标的编译器开发的代码叫做可操控代码。

 

  元数据:为了使运行时环境可以向可操控代码提供服务,语言编译器需要产生一种元数据,它将提供在使用语言中的类型、成员、引用的信息。运行时环境使用元数据定位并载入类,在内存中展开对象实例,解决方法调用,产生本地代码,强制执行安全性,并建立运行时环境的边界。

 

  可操控执行的含义:对象在执行的过程中完全被运行时环境所控制。运行时环境提供以下服务:自动内存管理、调试支持、增强的安全性及与非可操控性代码的互操作性。条件:1、选择以运行时为目标的语言编译器,如VB、C#;2、在组件的输出类型中使用CLR要求的语言特性。

转载于:https://www.cnblogs.com/Peter-Youny/archive/2012/10/23/2735740.html

你可能感兴趣的文章
[工具] Sublime Text 使用指南
查看>>
Hangfire在ASP.NET CORE中的简单实现方法
查看>>
今晚的比赛(2011.12.4)
查看>>
统计细菌基因组ORF
查看>>
Unity3D笔记 英保通三 脚本编写 、物体间通信
查看>>
python实现对某招聘网接口测试获取平台信息
查看>>
JavaWeb项目生成PDF文件添加水印图片并导出
查看>>
Algorithm——何为算法?
查看>>
css 跳转电脑分辨率
查看>>
行为型模型 中介者模式
查看>>
Web服务器的原理
查看>>
小强升职计读书笔记
查看>>
Oracle数据库端分页SQL语句
查看>>
常用的107条Javascript
查看>>
web开发快速提高工作效率的一些资源
查看>>
echarts同一页面四个图表切换的js数据交互
查看>>
cf 二分图
查看>>
ResultSet用法集锦
查看>>
我们终将死去,这难道不够美好吗?
查看>>
Python 从入门到精通 全程最佳实现梳理
查看>>