写点什么

Visual Basic 中隐式的续行

  • 2008-03-01
  • 本文字数:655 字

    阅读完需:约 2 分钟

续行符(Line continuation characters)一直是 VB 语法的一个瑕疵。与 Pascal 家族和 C 家族的语言不同,Visual Basic 不要求一个拖尾的分号来表示指令的结束。出于权衡考虑,它的确需要一个符号来表示指令没有结束。

用一个下划线作为续行符,是在 Visual Basic 4 中被引入的。在那之前,代码的逻辑行不得不位于源码的一个单独的物理行中。除非你在用联机 SQL,否则这只是有点令人讨厌,而不是什么真正的问题。但是随着 LINQ(它可以很容易的预处理单个查询指令)的引入,尤其是深层嵌套的情况下,问题就来了。

一篇纯粹探讨性的文章里,Microsoft 的Paul Vic 提议在最通常的情形下,消除对续行符的需求。然而VB 与SQL 不同,它并不能彻底取消续行符,即使它真的可以结束。

Paul 提议在以下的五种情况下应取消续行符:

  1. 在表达式中的二进制操作符之后。
  2. 在如下标点之后:逗号(“,”),左括号(“(”),左大括号(“{”),XML 的起始嵌入表达式(“”)。
  3. 在一个特性(Attribute)中的小于号(“<”)之后,以及在一个特性中的大于号(“>”)之前,或者在一个非文件级特性中的大于号之后(例如,一个没有指定“Assembly”或者“Module”的特性)。
  4. 在查询表达式操作符的前和后。

被社区所唾弃的其它建议还包括:

  • 在 Handles 和 Implements 语句之前(还有在这些语句的逗号之后)
  • 在用来标记字符串的前双引号"和后双引号"之间

对行内注释的支持也被提了出来。目前,VB 只有在语句结尾处才支持注释。行内注释会使得开发人员很难编写复杂的 LINQ 查询。

查看原文 Implicit line continuations in Visual Basic

2008-03-01 06:511106
用户头像

发布了 29 篇内容, 共 41092 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

智能语音技术:从哪儿来?往何处去?

安第斯智能云

深度学习 语音

3 分钟了解 JSON Schema

程序员鱼皮

Java json 数据库 大前端 后端

网络上数据通信过程

一个大红包

8月日更

一个案例:论写作的重要性

非著名程序员

个人成长 写作 认知提升 8月日更

元宇宙系统|NFT游戏系统技术开发

薇電13242772558

区块链

Go- 递归函数

HelloBug

递归 Go 语言

Go- 函数执行时间

HelloBug

Go 语言 函数执行时间

画15张图搞定MySQL InnoDB工作原理

Java MySQL 数据库 程序员 后端

笔记-python面向对象

加里都好

Python代码阅读(第17篇):列表元素按位合并

Felix

Python 编程 Code Programing 阅读代码

按下数字化转型快进键!DataPipeline与星环大数据平台完成产品兼容互认证

DataPipeline数见科技

数据挖掘经典算法之K-邻近算法(超详细附代码)

Python研究者

8月日更

5000字、12 连环炮、一张图快速搞定线程池

Java 架构 面试 后端 多线程

竟有阿里大牛用678页PDF只讲Java程序性能优化,除了干货就是干货

Java~~~

Java 架构 面试 JVM 调优

解决生命科学研究痛点,北鲲云计算着力打造行业解决方案

北鲲云

客户需求难以推进和实现?企业如何有效管理项目需求?

优秀

项目管理

高性能C++ HTTP客户端原理与实现

万俊峰Kevin

c++ workflow http client

如何通过AI做智能化转型的一些思考

石云升

学习 AI 8月日更

吹爆!阿里高工携18位架构师耗时57天整合的1658页面试总结太香了

Java~~~

Java spring 架构 面试 JVM

Python Qt GUI设计:将UI文件转换为Python文件的三种妙招(基础篇—2)

不脱发的程序猿

Python qt GUI UI文件转换为Python文件

Go- defer

HelloBug

defer Go 语言 代码追踪 记录函数参数和返回值

neo4j 图数据库基础

escray

学习 neo4j 8月日更

架构实战营1期模块6作业——微服务架构

tt

架构实战营

又快又稳!Alibaba出品Java性能优化高级笔记(全彩版)震撼来袭

Java~~~

Java 架构 jdk 面试 JVM

FabEdge快速安装指南,极速上手体验边缘集群

BoCloud博云

边缘计算 博云开源 FabEdge 技术干货

模块(一)什么是架构

我是一只小小鸟

网络攻防学习笔记 Day115

穿过生命散发芬芳

网络安全 8月日更

实时数据引擎系列(二): 批流一体的数据

tapdata

下载超过10万次?阿里大佬的《高并发、性能调优笔记》一战封神

Java架构师迁哥

构建可靠分布式架构的最佳方式,竟记在国内第一本“凤凰架构”上

Java~~~

Java 架构 面试 JVM 架构师

Go- 闭包函数

HelloBug

Visual Basic中隐式的续行_.NET_Jonathan Allen_InfoQ精选文章