C#语言重要常识

摘要:
C#2.0引入了了全局限定符global,当器出现在命名空间别名限定符之前时,表示通知编译器我们需要的是一个命名空间的名字。camelCase命名约定则用于为变量和方法参数命名。
同一个命名空间可以分散在多个文件中。
位于任何命名空间之外的语法元素都被认为是放在匿名全局命名空间中的。
在同一个项目中的语法元素可以声明在多个文件中,它可以是类、结构或接口。当然它们必须在同一个命名空间中。
#define:定义用于条件编译的符号,为#if、#elif、#else及#endif所用。
#error:将引发一个自定义的编译错误,通常用于防止编译期间符号定义出现冲突。
#warning:生成一条警告信息,但不会中断编译操作。
#pragma warning disable,#pragma warning restore:暂时关闭和恢复C#编译器产生的某些特定的警告信息。
#line:改变编译错误或警告信息来源的行号(甚至文件名)。
#region,#endregion:可以实现收起和展开某个特定的代码段。
用using关键字可以为命名空间或类型定义别名。如果定义在命名空间之外,别名生效的范围仅限于当前文件。若定义在命名空间里,则生效的范围为当前代码块与定义别名的命名空间之交集。
C#语言重要常识第1张usingC=System.Console;
C#语言重要常识第2张C#语言重要常识第3张
classProgramC#语言重要常识第4张{
C#语言重要常识第5张C#语言重要常识第6张
staticvoidmain()C#语言重要常识第4张{
C#语言重要常识第8张C.WriteLine(
"Hello");
C#语言重要常识第9张}

C#语言重要常识第10张}
命名空间别名限定符“::”,这个用在类型的左边,就能让编译器知道这个类型限定在一个别名之下。
C#2.0引入了了全局限定符global,当器出现在命名空间别名限定符之前时,表示通知编译器我们需要的是一个命名空间的名字。
外部别名(extern)允许使用分别定义在两个不同程序集中,但类型名称和命名空间都一样的两个类型。
如果//或者/*...*/格式的注释以TODO、HACK或UNDONE开头,就会被自动添加到任务列表中。
命名约定:PascalCase:每个单词的首字母使用大写字母:MyVariable
camelCase:第一个单词的首字母使用小写:myVariable
微软推荐C#中使用PascalCase命名约定来表示方法、事件名、共有字段名、属性名、常数名、命名空间名、类名、结构名、委托名、枚举名、接口名和attribute名的标识符命名。
camelCase命名约定则用于为变量和方法参数命名。
另外,私用实例成员名可以采用“m_”前缀,私用静态成员名可以采用“s_”前缀。
循环的性能优化:
  1. 如果循环内调用的方法接受很多参数,那么最有效率的方法就是把那个方法的代码直接复制到循环体中(内联法);
  2. 如果需要不断访问一个对象的属性而且知道在循环过程中它将保持不变,那么最好在开始循环之前将它缓存在一个局部变量中。
  3. 考虑用StringBuilder类代替循环中的String类来执行字符串的连接操作。
  4. 如果可以的话,用循环代替递归;
  5. 如果循环的终止条件必须检测多个条件,将最有可能满足的条件放在前面。
  6. for循环比foreach循环效率略有提升。

免责声明:文章转载自《C#语言重要常识》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇前言 转录组本地ubuntu 往阿里云ubuntu服务器传文件下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

C#使用技巧之调用JS脚本方法一

有时候我们需要在C#中直接调用js方法,这是完全没问题的。当然,我们也可以把js代码转化为C#,然后在C#中执行,但是这个就得花时间了~~下面我给大家介绍下一种直接在C#中调用JS文件的方法。 0、贴个效果图 1、创建个Winform项目。 2、在From1上增加一个文本框一个按钮。 3、在解决方案中创建一个test.js文件。 test.js代码如下:...

IIS WebForm开发基础

Winform是在客户电脑操作的。 WebForm是客户机通过一个IP地址,到IIs服务器,再进行信息反馈,在非客户机上操作的。 一、WebForm 运行流程(1)需要访问数据库(aspx) 客户机打开Ip地址,找到对应Ip地址的服务器,然后对IIs服务器进行请求,进行反馈,如果需要对数据库进行处理,就是IIs对.netFramework,进行请求,.ne...

C#开发Android应用实战 读后感

最近两年从事C#网站和项目开发比较多,JAVA项目比较少了,没有经历过手机开发项目的经验。手上也有两部Android、HTC智能手机,喜欢手机客户端上部分软件的功能,自己也想开发一个类似小说阅读器手机端的搜集IT技术文章的手机软件。特申请一本《C#开发Android应用实战》来学习和阅读。年前一月三十一号拿到此书,因为手头还有WCF等技术一直在学习和实践,...

C#和C++实现强制结束进程的两种实现方式

强制结束进程的两种实现方式--C#和C++实现   最近在做一个大型的项目,由于进程之间的关联出了一些问题,长话短说,就是我们不得不强制停止某些进程以保证系统正常的运行,在网上找了一下,没发现有这方面详细的介绍和写的比较全面的文章,于是按照MSDN的说明写了两种方法,希望对遇到类似问题的朋友有所帮助。 首先,我们来看看C#的实现方式, 由于C#对进程的封...

干货分享:ASP.NET CORE(C#)与Spring Boot MVC(JAVA)异曲同工的编程方式总结

我(梦在旅途,http://zuowj.cnblogs.com; http://www.zuowenjun.cn)最近发表的一篇文章《.NET CORE与Spring Boot编写控制台程序应有的优雅姿势》看到都上48小时阅读排行榜(当然之前发表的文章也有哦!),说明关注.NET CORE及Spring Boot的人很多,也是目前的主流方向,于是我便决定系...

c#Winform程序的toolStripButton自己定义背景应用演示样例源代码

C# Winform程序的toolStrip中toolStripButton的背景是蓝色的,怎样改变背景及边框的颜色和样式呢? 实现此功能须要重写toolStripButton的Paint方法 这里仅仅是给出解决这个问题的思路和方法,例如以下图,当鼠标移到button上,背景会变为黑色 实现代码例如以下: ToolStripBu...