A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王赟 中级黑马   /  2013-4-22 19:10  /  1319 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

string和System.String翻译成IL代码的时候完全一样,那他们之间有什么细微的差异呢?

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

2 个回复

倒序浏览
string是c#中的类型,
String是.net Framework的类(在c# IDE中不会显示蓝色)
c# string映射为.net Framework的String
如果用string,编译器会把它编译成String,所以如果直接用String就可以让编译器少做一点点工作
如果使用c#,建议使用string,比较符合规范 string始终代表 System.String(1.x) 或 ::System.String(2.0) ,String只有在前面有using.System;的时候并且当前命名空间中没有名为String的类型(class、struct、delegate、enum)的时候才代表System.String string是关键字,String不是,也就是说string不能作为类、结构、枚举、字段、变量、方法、属性的名称,而String可以。

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
1.string是C#中的一个基本类型,而System.String是一个类~

2.一般情况下, string不能定义为类、结构、枚举、字段、变量、方法、属性的名称,而String(区分大小写)可以~

3.string是属于C#中的一种引用类型,而System.String是.net Framework框架中的一个大类

4.System.String中包含各种方法属性

我知道的大概就这么些了, 你可以去查看MSDN ,里面有string和String的相关说明 ^^.

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马