摘要:
为了支持Linq平台所支持的查询特性,VB9必须引入少量“函数式编程(FP)”的特性。本次所介绍的嵌套函数和Closue特性就是最重要的一个环节。在我们探讨为什么引入这样一些特性之前,先来看看这个特性是什么样的。 VB9允许在过程内部定义函数或子程序,如: Public Sub MyProc()Sub MyProc() Sub Nested()Sub Nested() 'C... 阅读全文
摘要:
Visual Basic 9.0支持新一代语言集成的查询功能,支持在DLinq的数据对象或者XLinq的XML数据上实施关系型的查询,这些查询是利用DLinq或者XLinq相关对象上一组方法(或者叫算符)来实现的。而VB9的开发人员认为这套查询方法也应该能用于现有的对象数据组织方式,比如IEnumerable和其他集合。因此,Visual Basic 9.0需要一种从外部给现有类型增加方法的功能... 阅读全文
摘要:
在Visual Basic 2005以前的版本,如果类或结构没有定义初始化构造函数,我们就必须用属性逐一赋值的方式。比如'假设有个结构Person,有Name和Age属性 'VB 2005代码 Dim p As Person With p .Name = "Jack" .Age = 27 End With 这样,对象的初始化不能与对象的定义同时完成,多少有些不便。特别是我们在表达式... 阅读全文
摘要:
不要惊讶,每个PDC上都会有微软最新产品的前瞻,所以在Visual Basic 2005发布以前看到Visual Basic 9.0的消息就是可以理解的了。Visual Basic 9.0 (codename Visual Basic Orcas)将随下一个Visual Stduio主版本(9.0,Orcas)一起发布,但是微软很早就开始了新语言特性的规划,在今天(PST 9月13日)召开的PDC... 阅读全文
摘要:
我即将在博客堂和博客源同时开始《Visual Basic 9.0前沿播报》详细报道。内容涉及全部VB9当前设计下的语言新特性和相关XLinq/DLinq API结合的状况。以下是内容预告静态篇一、局部变量类型推测和数组初始化器Dim a = 5Dim arr = {1, 2, 3}二、对象初始化器和匿名类型Dim a = New Employee{.Name = "Jack", .Age = 27... 阅读全文
摘要:
今天在二十四画生的帖子里发现一个问题,有些Visual Basic的使用者认为VB的内置函数直接定义在Microsoft.Visual Basic命名空间中,因此不能直接在C#中访问。其实Microsoft.VisualBasic.dll里面的函数,都是定义在模块里的,C#中只要直接写模块名就可以访问到了。但在VB里确实可以只通过Microsoft.VisualBasic访问到这些函数,这使得一般... 阅读全文
摘要:
大家已经很熟悉C# 2005将加入内置的重构支持,方便用户快速对代码实施常用的重构。重构是十分重要的维护代码的手段,不仅C#的用户需要,VB的用户更加需要。因为从VB6升级来的代码,经过升级向导的“蹂躏”后已经面目全非,而且许多旧的代码风格与新的.NET特性格格不入。因此,重构成了升级旧代码,改善旧代码的重要手段。可惜的是,除了重命名之外,VB2005并没有加入重构特性,这让VB的程序员十分扫兴。... 阅读全文
摘要:
暂时无法访问博客堂,先贴到这里了,等能访问了再复制过去……其实这问题源于轻剑傲风解答尉迟方兄遇到的面试题那个帖子。这道题如下: 1、reverse a sentence in place. 例子:I am yuchifang -> yuchifang am I 注意in place 关键点在于“in place”,即“就地”。我的理解是,要求这个转换所占的全部空间限于原字符串所在的地址空间... 阅读全文
摘要:
我想我不用做太多自我介绍。我就是Ninputer,博客堂的装配脑袋。在这里我起了另一个昵称——拆卸脑袋。 我已进入这个贴新Post的界面就被震惊了。这么方便,这么多功能……没有用过博客堂的人根本不知道旧社会的Blog是什么样的(开个玩笑,其实开心也忙,没那么多功夫维护) 我本来就创作热情不高,时间也比较少,可能没有时间维护这个Blog。但这里这么先进,实在让我流连忘返。我来试试这里贴代码的功能... 阅读全文