热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

VisualBasic2010新特性

本文章列举VisualBasic2010的新特性和增强特性。点击下面章节的超链接查看详细特性。VisualBasic语言和编译器自动实现属性(Auto-impleme

本文章列举 Visual Basic 2010 的新特性和增强特性。点击下面章节的超链接查看详细特性。

Visual Basic 语言和编译器

自动实现属性(Auto-implemented properties)

自动实现属性 给您提供简化的语法来快速定义类的属性,而不需要编写 Get 和 Set。了解详情,参看Auto-Implemented Properties (Visual Basic)(译者注:早在C#3.0已经有此特性)。

集合初始化器(Collection Initializers)

集合初始化器 提供简化的语法来创建集合并用已有的集合值初始化之。当您用现有的一组值来创建集合的时候,集合初始化器就特别有用,例如,一个菜单选项或编目(categories)。查看详细,Collection Initializers Overview (Visual Basic)

隐式行连接(Implicit Line Continuation)

在许多场合下,隐式行连接 允许您的代码换行,而不需要用下划线"_"来连接。查看忽略下划线的隐式行连接的适用场合,请看Statements in Visual Basic。

多行 Lambda 表达式和子过程(Multiline Lambda Expressions and Subroutines)

不仅多行 lambda 函数和子过程,Lambda 表达式已经扩展为支持子过程。详情请看Lambda Expressions。

指定语言版本的新命令行选项

命令行选项 /langversion 使得编译器只接受指定版本的Visual Basic语法。

等价类型支持(Type Equivalence Support)

现在您可以部署已经嵌入类型信息(type information)的应用程序,而不是从Primary Interop Assembly (PIA)导入类型信息。有了嵌入的类型信息,您的应用程序可以在运行时使用类型,而不需要引用运行时程序集(runtime assembly)。如果发布了不同版本的运行时程序集,包含嵌入类型信息的各版本程序都可以正常工作,而不需要重新编译。更详细信息,见/link (Visual Basic)。想看例子,见Managed Assemblies (C# and Visual Basic)。

动态支持(Dynamic Support)

Visual Basic 可以绑定到来自动态语言(如IronPython 和 IronRuby)的对象。详情请看Working with Dynamic Objects (Visual Basic)和Walkthrough: Creating and Using Dynamic Objects (C# and Visual Basic)。

共变和逆变(Covariance and Contravariance)

共变(Covariance)允许您使用比泛型参数(generic parameter)更具派生的类型(more derived type),而逆变(contravariance)允许您使用更少派生的类型(less derived type)。这允许实现了变体接口(variant interfaces)的类的隐式转换(implicit conversion),并且给具有变体委托类型的方法签名的匹配提供更多的灵活性。您可以用新关键字 In 和 Out来创建变体接口和委托。.Net 框架还给许多既有的泛型接口和委托引入变体支持,包括IEnumerable(Of T) 接口和Func(Of TResult) 、Action(Of T) 委托。更详细信息,请参看Covariance and Contravariance (C# and Visual Basic)。

集成开发环境

下面章节描述 Visual Studio IDE 的增强特性。

导航到(Navigate To)

您可以用 Navigate To 特性查找源代码中的符号(symbol)或者文件。您可以查找包含在符号中的关键字,用骆驼(Camel)方式或者下划线来分割符号为关键字。

详情请看:How to: Search for Objects, Definitions, and References (Symbols).

高亮引用(Highlighting References)

当您点击源代码中的一个符号时,该符号在文档中的所有实例都将高亮显示。

对于大多数控制结构,您点击了关键字,结构中的关键字都高亮显示。例如,当您点击If...Then...Else 结构的 If 时,该结构的所有实例If, Then, ElseIf, Else,和 End If 都高亮显示。

移动到下一个或上一个高亮符号,您可以使用CTRL+SHIFT+DOWN ARROW or CTRL+SHIFT+UP ARROW。详情请看How to: Use Reference Highlighting

从用法生成(Generate From Usage)

从用法生成 允许您在定义类或成员之前使用它们。您可以生成想用而又未定义的东西,如类、构造函数、方法、属性、字段或者枚举。您可以不离开当前代码而生成新类型或者成员,不打断您的当前工作。

从用法生成 支持测试优先开发(test-first development)的编程方式。详情请看Generate From Usage.

智能提示建议模式(IntelliSense Suggestion Mode)

智能提示提供两种智能语句完成方式:完成模式(completion mode)和建议模式(suggestion mode)。建议模式 在类和成员还未定义时使用。详细请看List Members。

样例程序(Sample Applications)

Visual Basic 包含新样例程序,演示如下特性:

自动完成属性、隐式行连接、集合初始化器、covariance and contravariance、多行 lambda 表达式和子过程。关于 Visual Basic 语言样例的信息和如何获取,看Visual Basic Language Samples。

原文:http://msdn.microsoft.com/en-us/library/we86c8x2(v=VS.100).aspx

转:https://www.cnblogs.com/feixian49/archive/2010/05/14/1735066.html



推荐阅读
  • 在分析Android的Audio系统时,我们对mpAudioPolicy->get_input进行了详细探讨,发现其背后涉及的机制相当复杂。本文将详细介绍这一过程及其背后的实现细节。 ... [详细]
  • 通过将常用的外部命令集成到VSCode中,可以提高开发效率。本文介绍如何在VSCode中配置和使用自定义的外部命令,从而简化命令执行过程。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • Java中不同类型的常量池(字符串常量池、Class常量池和运行时常量池)的对比与关联分析
    在研究Java虚拟机的过程中,笔者发现存在多种类型的常量池,包括字符串常量池、Class常量池和运行时常量池。通过查阅CSDN、博客园等相关资料,对这些常量池的特性、用途及其相互关系进行了详细探讨。本文将深入分析这三种常量池的差异与联系,帮助读者更好地理解Java虚拟机的内部机制。 ... [详细]
  • Netty框架中运用Protobuf实现高效通信协议
    在Netty框架中,通过引入Protobuf来实现高效的通信协议。为了使用Protobuf,需要先准备好环境,包括下载并安装Protobuf的代码生成器`protoc`以及相应的源码包。具体资源可从官方下载页面获取,确保版本兼容性以充分发挥其性能优势。此外,配置好开发环境后,可以通过定义`.proto`文件来自动生成Java类,从而简化数据序列化和反序列化的操作,提高通信效率。 ... [详细]
  • 本文节选自《NLTK基础教程——用NLTK和Python库构建机器学习应用》一书的第1章第1.2节,作者Nitin Hardeniya。本文将带领读者快速了解Python的基础知识,为后续的机器学习应用打下坚实的基础。 ... [详细]
  • 【妙】bug称它为数组越界的妙用
    1、聊一聊首先跟大家推荐一首非常温柔的歌曲,跑步的常听。本文主要把自己对C语言中柔性数组、零数组等等的理解分享给大家,并聊聊如何构建一种统一化的学习思想 ... [详细]
  • 在 CentOS 6.4 上安装 QT5 并启动 Qt Creator 时,可能会遇到缺少 GLIBCXX_3.4.15 的问题。这是由于系统中的 libstdc++.so.6 版本过低。本文将详细介绍如何通过更新 GCC 版本来解决这一问题。 ... [详细]
  • 本文将带你快速了解 SpringMVC 框架的基本使用方法,通过实现一个简单的 Controller 并在浏览器中访问,展示 SpringMVC 的强大与简便。 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • 尽管我们尽最大努力,任何软件开发过程中都难免会出现缺陷。为了更有效地提升对支持部门的协助与支撑,本文探讨了多种策略和最佳实践,旨在通过改进沟通、增强培训和支持流程来减少这些缺陷的影响,并提高整体服务质量和客户满意度。 ... [详细]
  • AIX编程挑战赛:AIX正方形问题的算法解析与Java代码实现
    在昨晚的阅读中,我注意到了CSDN博主西部阿呆-小草屋发表的一篇文章《AIX程序设计大赛——AIX正方形问题》。该文详细阐述了AIX正方形问题的背景,并提供了一种基于Java语言的解决方案。本文将深入解析这一算法的核心思想,并展示具体的Java代码实现,旨在为参赛者和编程爱好者提供有价值的参考。 ... [详细]
  • 二叉树的直径是指树中任意两个叶节点之间最长路径上的节点数量。本文深入解析了计算二叉树直径的算法,并提出了一种优化方法,以提高计算效率和准确性。通过详细的案例分析和性能对比,展示了该优化算法在实际应用中的优势。 ... [详细]
author-avatar
唯依爱时尚服饰
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有