-
Notifications
You must be signed in to change notification settings - Fork 30
C#Light语法
lightszero edited this page Dec 1, 2014
·
5 revisions
但是有一些不支持
支持//
不支持 /* */
支持int uint bool string float double 和其他整数类型
支持在代码中直接插入整数小数字符串
不支持在代码中使用0x形式,不支持.5形式,必须写0.5
支持char的定义‘a’;
同c#定义变量方式,先定义再使用,可以在定义同时赋值。
例
int i;
int j=0;
int k=i+1;
bool b1;
bool b2=true;
bool b3=false;
基本同c#
支持
+ - * / %
五种数学计算
支持
+= -= /= *= %=
五种自运算
支持
++ --
两种自增运算,只支持变量在左侧
++i 不支持 i++ 支持
支持
> >= < <= != == && ||
八种逻辑运算
支持! 取反
支持三目运算?:
不支持位运算
支持 for foreach while dowhile ,支持continue,break,return
支持 if,可以if else嵌套
不支持switch goto
C#Light不支持命名空间
可以写
Debug.Log();
不可以写
UnityEnging.Debug.Log();
头部可以写using
注册了类型以后
new 支持,不支持new的同时初始化成员
is as 和 强制类型转换 支持
成员变量访问支持
成员函数调用支持
向类型注册事件代理支持
支持对象的[] index访问
静态支持
可以在脚本里编写class
支持
new int[3]
new int[]{1,2,3}
两种语法
任何类型数组都必须注册子类型和数组类型
泛型数组
作为类型支持
比如可以将List
Dictionary<int,string> 注册成一个类型总体使用
支持
委托 支持脚本编写函数注册给程序的委托接口
A.Test+=Func1;
可以给委托赋值
不支持 将lambda 表达式赋值给var变量
支持lambda表达式
支持 try catch throw
可以继承脚本中编写的interface
不支持class继承
只支持自动实现
int i
{
get;
set;
}