写点什么

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:511385
用户头像

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

关注

评论

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

剧透!3月9日deepin Meetup · 成都站,精彩议题&活动环节早知道

nn-30

多任务一次搞定!selenium自动化复用浏览器技巧大揭秘

霍格沃兹测试开发学社

MO干货 | shuffle执行计划解析(上篇)

MatrixOrigin

数据库 云原生 分布式,

开篇语 | 容器中的⼤模型 (LLM in Containers)

智领云科技

容器 大模型

2024年2月NFT市场激增:NFT趋势、热门项目和市场分析

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

JSON 和 Form-data: 深入理解 Web 开发中的数据提交方式

Liam

json 程序员 前端 数据交互 Form-data

实例详解如何构建动态SQL语句

华为云开发者联盟

数据库 后端 华为云 华为云GaussDB 华为云开发者联盟

模型驱动测试:引领软件质量的新潮流

测试人

软件测试 自动化测试 测试开发

流行 NFT 的必备指南

Footprint Analytics

NFT

转型敏捷中,有哪些无形的障碍?

敏捷开发

项目管理 Scrum 敏捷开发 敏捷转型

ConfigMap挂载与Subpath在Nginx容器中的应用

华为云开发者联盟

容器 开发 华为云 华为云开发者联盟

华为云云原生专家入选全球顶级开源组织CNCF技术监督委员会

华为云开发者联盟

华为云 云原生开源 华为云开发者联盟 华为云云原生

CodeFuse开源ModelCache

百度开发者中心

深度学习 大模型 人工智能、

大模型时代下的视觉识别任务

百度开发者中心

人工智能 图像处理 图像 大模型

LangChain与Chroma的大模型语义搜索应用

百度开发者中心

人工智能 深度学习 大数据 大模型

新零售SaaS架构:订单履约系统的概念模型设计

不在线第一只蜗牛

架构 零售 SaaS 平台开发

如何做代币分析:以 CRO 币为例

Footprint Analytics

Token

模型驱动测试:引领软件质量的新潮流

霍格沃兹测试开发学社

容器中的⼤模型(一)| 三行命令,大模型让Excel直接回答问题

智领云科技

容器 大模型

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