我从表达式语言角度对C#的看法
2004-12-08 22:10
330 查看
尽管OOP和面向组件编程是潮流,但是我初步了解了C#,看着它比其它前辈更优秀,欣喜不已。
学习过程中,我想起了当初学习C语言的书上讲的东西,“任何表达式加上; 就可以成为一个语句,因此从这个角度上讲C语言是表达式语言”
但是现在这个C#,语法明确规定,并不是所有的表达式加上; 就可以成为一个语句,必须访问变量引用或函数才成为有效表达式。
而且某些表达式尽然会有无返回值
典型的: -=,+= 当用在时间参数表时,其右操作数增加到左操作数内部列表(或从参数列表删除),该表达式没有返回值。
其它的如:垃圾回收器不保证类的析构函数正确调用和线程安全,而且调用析构顺序不确定,在特定的情况下产生不同结构。(调用时间不请顶就不说了)
this指针在Struct和Class中的区别非常大,脱胎C++,但是修改很大。
我感觉C#给C++程序员留下的遗产就是编码习惯而已(当然编程思想除外)。其它的,修改太大,实际上是一种需要从头学的全新语言。微软利用字符”C”很好的拉拢了我们这些软件工人。
学习过程中,我想起了当初学习C语言的书上讲的东西,“任何表达式加上; 就可以成为一个语句,因此从这个角度上讲C语言是表达式语言”
但是现在这个C#,语法明确规定,并不是所有的表达式加上; 就可以成为一个语句,必须访问变量引用或函数才成为有效表达式。
而且某些表达式尽然会有无返回值
典型的: -=,+= 当用在时间参数表时,其右操作数增加到左操作数内部列表(或从参数列表删除),该表达式没有返回值。
其它的如:垃圾回收器不保证类的析构函数正确调用和线程安全,而且调用析构顺序不确定,在特定的情况下产生不同结构。(调用时间不请顶就不说了)
this指针在Struct和Class中的区别非常大,脱胎C++,但是修改很大。
我感觉C#给C++程序员留下的遗产就是编码习惯而已(当然编程思想除外)。其它的,修改太大,实际上是一种需要从头学的全新语言。微软利用字符”C”很好的拉拢了我们这些软件工人。
相关文章推荐
- 切勿锁定类型对象(转msdn)
- 有C#风潮想到的
- 在C#中使用自定义消息
- 如何得到硬盘序列号?.NET版本[C#]
- 借书偶感——关于C#的思索和更多
- 天天学C#- using
- C#中操作系统剪贴板
- c#里取得当前日期的月份
- c#.net函数列表
- 深入剖析C#继承机制7
- 深入剖析C#继承机制6
- 深入剖析C#继承机制5
- 深入剖析C#继承机制4
- 深入剖析C#继承机制3
- 深入剖析C#继承机制2
- 深入剖析C#继承机制1
- 怎样通过Visual C#.net创建一个DTS任务
- 使用 Visual C# .NET 向 Microsoft Excel 2002 传输 XML 数据
- [收藏]WINFORM(C#)的键盘测试
- C#中对注册表的操作(原创)