• C# 中符号的作用[备忘]



    ~ 按位求补符;
    ! 非逻辑运算符;
    % 求余运算符;
    ^ 异或位运算符;
    & 且位运算符;
    |  或位运算符;
    * 既可以用作乘法符号,还可以表示为指针;
    + 表示数学运算符相加;
    = 用来表示赋值操作;
    \  用于转义符的开始,如\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.
  • 相关阅读:
    软件工程最后一次作业
    软件工程第二次结对作业
    软件工程第三次作业
    软件工程第二次个人作业
    软件工程第二次作业
    软件工程第一次作业
    2020软件工程最后一次作业
    软件工程第四次作业
    软件工程第三次作业
    软件工程第二次作业
  • 原文地址:https://www.cnblogs.com/xugang/p/1655829.html
Copyright © 2020-2023  润新知