写点什么

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

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

关注

评论

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

AutoBots在ToB订单履约场景的落地应用

京东科技开发者

mac电脑植物大战僵尸版下载

你的猪会飞吗

mac游戏 Mac游戏下载 mac单机游戏

nodejs中路径相关api

秃头小帅oi

KaiwuDB 受邀亮相 2024 数博会

KaiwuDB

数博会 KaiwuDB

Invicti v24.9.0 发布下载,新增功能概览

sysin

invicti

电脑越用越慢,有什么好的解决方案?

上海锐起科技

KaiwuDB X 临沂大数据局 | 重点车辆一体化监管,助力你我的安全出行 🤝

KaiwuDB

KaiwuDB 分布式多模数据库 重车辆监管平台

文献解读-The trans-omics landscape of COVID-19

INSVAST

基因数据分析 生信服务

简化登录流程,助力应用建立用户体系

HarmonyOS SDK

HarmonyOS NEXT

剖析 Redis List 消息队列的三种消费线程模型

不在线第一只蜗牛

数据库 redis

Spring webflux注解:提供全面的JPA注解应用案例(必须收藏)

肖哥弹架构

spring spring webflux

Meme“淘金”热潮下:Meme发射平台的安全风险分析

区块链软件开发推广运营

交易所开发 dapp开发 区块链开发 链游开发 NFT开发

Rust 助力无服务器构筑云计算新引擎

亚马逊云科技 (Amazon Web Services)

云计算 Serverless rust

Parallels Desktop 20 发布下载,macOS Sequoia 和 Windows 11 24H2 支持准备就绪

sysin

macos Parallels Desktop

《黑神话:悟空》下的科技众生相

脑极体

AI

亚信安慧AntDB-M 只读事务提交优化

亚信AntDB数据库

AntDB

JMeter 介绍与安装

霍格沃兹测试开发学社

京东技术专家的修炼之道——成为一名“六边形战士”

京东科技开发者

Cisco Modeling Labs (CML) 2.7.2 发布下载,新增功能概览

sysin

Cisco CML

Java 中堆内存和栈内存上的数据分布和特点

emanjusaka

Java stack heap

《黑神话:悟空》——高科技点亮西游神话璀璨之路

GPU算力

马斯克 节点搭建 AIPC 黑神话悟空 PC集群

软件测试学习笔记丨Docker 安装、管理、搭建服务

测试人

软件测试

Cisco Catalyst 9100 无线接入点 IOS XE 17.15.1 发布下载,新增功能概览

sysin

Cisco ap 思科 IOS XE 9100

PoS 和 PoW 矿机系统区块链公链开发成本分析

区块链软件开发推广运营

dapp开发 链游开发 NFT开发 公链开发 代币开发

曝字节 AI 硬件团队首款自研产品为智能耳机,与豆包联动;OpenAI 神秘新模型或将在两周内发布丨 RTE 开发者日报

声网

公开课 | 金九银十,测试开发面试秘籍大公开!

测试人

软件测试

爽了!直接口诉让豆包MarsCode 开发文章评论区BOT!

TRAE.ai

人工智能 编程 AI 开发

报名啦|PolarDB数据库创新设计赛(天池杯)等你来战

阿里云数据库开源

数据库大赛 国赛 阿里云PolarDB

什么是APT攻击,如何处理

德迅云安全杨德俊

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