Ps:使用这两个关键字可以很方便的把头文件收起来(虽然VS已经集成这个功能= =)
一、变量
1、简单类型
(1)变量类型
(2)示例一
static void Main(string[] args) { int a; string s; a = 17; s = "\"a\" is"; Console.WriteLine("{0} {1}.", s, a); Console.ReadKey(); }
在这里完成了声明,赋值,输出三个操作。
a、声明
int a; string s;
声明一个整形和一个字符串变量
b、赋值
a = 17; s = "\"a\" is";
第一个整形变量的赋值很好理解,然后就是下面字符串的赋值,在C#中如果要将一个变量赋值一个字面值的话,那么就需要用转义字’\’,如上所示,与C和C++都有些不同,但是先默认下来。
c、输出
Console.WriteLine("{0} {1}.", s, a);
这里的话,{0} {1}是占位符,也就是说按照顺序用后面的s 和a替换掉{0},{1}。
2、命名规则
3、字面值
主要的是多出了个逐字定义字符
二、表达式
1、数学运算符
倒数第二那个’+‘号操作可以暂且忽略,主要是用来实现运算符重载才会使用,可以暂且忽略。
在这里其实就会发现’+‘在作为2元运算符在处理不同对象时有不同的作用,这就是使用了运算符重载的一个example。
++在前面的是先加了再用,在后面的是先用了再加。
PS:怎么读取输入的变量呢?就是使用此语句
userName = Console.ReadLine( );
2、赋值运算
1、操作符
3、运算符的优先级
与C语言和C++是一样一样的。
4、名字空间
(1)定义
PS:名称空间一般使用PascalCase的命名方法
(2)嵌套定义
即使变量等名字相同,只要是在不同的名字空间下,就是表示着不同的变量,所以我们通过使用名字空间来区分名字相同的变量。
(3)using语句
这样的话,我就可以在LevelOne的花括号内,任意调用LevelTwo的变量名,而不需要加上LevelTwo. 前缀。是为了我们方便。但是在对于有相同名字的变量时,我们使用这句话,就会导致编译出错,所以我们可以使用一个别名来解决这类问题
如这个,在调用LevelOne的时候我们可以直接使用 NameThree,在调用LevelTwo中的时候,我们可以这样调用:LT.NameThree。
当然using还可以放在所有的花括号外面,变成一个全局的语句,这样的话,全局范围内就都可以使用using调用的那个名字空间内的变量函数等等而不需要加前缀。