C#中符号的作用备忘

来源:互联网 发布:仙界网络直播间txt云盘 编辑:程序博客网 时间:2024/06/13 02:56

~ 按位求补符;
! 非逻辑运算符;
% 求余运算符;
^ 异或位运算符;
& 且位运算符;
|  或位运算符;
* 既可以用作乘法符号,还可以表示为指针;
+ 表示数学运算符相加;
= 用来表示赋值操作;
\  用于转义符的开始,如\n表示换行;
”  包裹字符串;
’  包裹单个字符;
< 逻辑运算符小;
> 逻辑运算符大;
, 用于分隔参数;
. 用于表示对象成员选择器或小数点;
/ 表示除以的数学运算符;

# 用于条件编译或划分代码块。
  如:#if #else #define #region #endregion

? 单个常用于表示可空的值类型,如:int? a=null;
  它也可以与很多字符组合使用来表示不同意义。

?? 用于泛型中,在值类型为空时指定默认值,
   int a = mynullable ?? 100;
   //表示假如mynullable不为空时则将其值赋给a,否则将100赋值给a。

++ 表示自加;
-- 表示自减;
&& 表示逻辑关系且;
|| 表示逻辑关系或;
== 表示逻辑关系相等;
>= 表示逻辑运算符大于或等于;
<= 表示逻辑运算符小于或等于;

<< 表示向左移位操作;
>> 表示向右移位操作;
// 表示单行注释;


+=,-=,*=,/=,%=,&=,~=,|= 等,它是一个数自身与某个数做相应数学操作的结果。如:a+=10; 完整形式为:a=a+10;


<> 在泛型中大量使用,它用来包裹类型参数。

() 用于对象中:
   1、表示函数参数区域;
   2、强制类型转换;
   3、制定运算优先级;

{} 用于对象中:
   1、表示代码片段作用域;
   2、协助c#中某些非凡操作时指定其作用块,如fixed,using等;
   3、另外在字符串格式化中,{}和数字组合表示目标字符串中待替换子串位置,如:string.format(“{0} + {1}={3}”, 1,2,3);


[] 这个符号同样常见,它通常有三种使用方式:
   1、一个是用于数组中表示索引位置;
   2、一种为添加类型的特性时使用;
   3、和this要害字组成索引器 this[...];


=> 它是构成lamda表达式的部分,使得匿名函数的书写更加简洁(3.0以后加入)。通常它前面会包含表达式参数部分,后面是表达式的主体部分。


@ 符号的两种用法:
   1、常用在字符串开头,它可以告诉编译器忽略转义符;

   2、当给变量或属性取名时,变量名(或属性名)与.net中的要害字相同冲突,可以使用“@变量名”来绕过限制。
如:int @int = 123;
//这里@int变量用reflector查看il变量时,看到的是int,而不是@int。


$ 符号的两种用法:
   1、该符号在匿名方法中,编译器会偷偷用到。
      可以通过查看il代码了解它的命名,但对c#代码是不可见的。机器产生的私有方法并不显示在 intellisense 中,也不能显式地调用它。

   2、在调试程序代码时,可以使用到该符号。
      比如当catch没有写上exception变量,如:catch{...}
      //要想获取exception信息,可以在“即时窗口”或者“监视窗口”输入:$exception 即可。


?和: 符号的组合
这里?和:组成条件表达式,如:int c= a==b?a:b;


<%= 和 %> 组合
用于在html代码中插入.net代码片段。
在aspx.net mvc中这个字符组合非经常见,这点类似以前的asp,这也是有些程序员认为mvc退回到asp时代的一个原因。


<%@ 和 %> 组合
用来表示aspx 2.0的page指令,它一般出现在页面顶部。
在aspx.net页面或用户控件中,有11个指令(注1),指令格式为:<%@ [directive] [attribute=value] %>。


注1:

asp.net中,11个页面或用户控件指令为:

assembly, control, implements, import, master, mastertype, outputcache, page, previouspagetype, reference, register.
原创粉丝点击