VB当中的新语法(二)

VB.NET 教程_01_基础语法     VB.Net教程简介: VB.Net是一种简单,现代,面向对象的计算机编程语言,由微软开发,将.NET Framework和公共语言运行库的强大功能与作为Visual Basic标志的生产力优势相结合。 Visual Basic .NET(VB.NET)是在.NET Framework上实现的面向对象的计算机编程语言。 虽然它是经典的Visual Basic语言的演变,但是它不... 阅读详情
 

VB当中的新语法(二)

                                                                        -- 区域类型推断 与 XML

当你看完笔者这几篇关于VB的新语法介绍之后,你会发现其实都跟LINQ有很密切的关系,尽管有些功能看似语法上的新扩充,但是实务上会使用到这些语法的场合,大多跟LINQ多少脱不了关系呢~

 

接着我们要来看的第二个VB新语法称为『区域类型推断』,简单的说,就是当你宣告变量时不指定类型的时后编译程序会自动帮你决定变量的类型,而不是一律的以object作为变量的类型,运算时再通过boxing来解决。

 

过去,当你键入底下的程序代码:


Dim v

 

这个变量v是Object类型,在旧版的VB 6.0当中,则是variant,如今,当你在编辑器当中输入这样的程序代码:


Dim v = 3


你的变量v类型会自动设为integer,倘若是:


dim v = 3.14

 

你的变量v类型会自动设为double。
总括来说,编译程序会依照初始值来决定变量类型。

甚至,变量的类型也可以由函数的返回值来决定,例如:
Dim ret = getBMI()

严格说起来,这些动作都是编辑器自动帮你做的, 对程序代码来说没有什么太大的影响,有一些部分也是因为在过去VB本来就会进行相当多的隐含类型转换,所以这些动作对开发人员来说没啥特别的感觉,但是实务上它可以加快程序运行的速度(因为不需要再做这些类型转换)

然而,你可能看到更多的使用场合是把这个机制和LINQ的查询返回值混在一起,再回头看前几天介绍的LINQ语法:


'查询BMI值大于25的人
Dim result = From c In matrix Where c.BmiValue > 25

从这边你会看到通过查询语法所返回的值,也是通过这样的机制来建立的。总的来说VB在语法上的更新,蛮多都实现在LINQ相关的应用上,这也是先前说过VB新语法与LINQ几乎脱不了关系。

另外,由于有类型推断,你可以在VB当中直接这么写:


 

你可以直接把XML以Copy Paste的方式贴到程序代码编辑区,然后定义一个变量来承接,由于具有类型推断的功能,因此xmlData变量会被定义成xElement类型,写起程序来方便多了。

VB语法高亮控件:实现与范例 VB语法着色控件是程序员日常开发中不可或缺的一部分。通过着色,开发者可以更容易地识别程序中的变量、函数、关键字等元素,从而提高代码的可读性和维护性。对于使用Visual Basic (VB) 编程语言的开发者来说,这种控件能够将普通的文本编辑器转变为具有高级文本格式支持的集成开发环境(IDE)。行号显示界面的布局和风格是影响用户体验的重要因素。理想情况下,行号应该能够轻松地与代码行对齐,并且不会干扰代码阅读。以下是一些设计时需要考虑的关键点:对齐。 阅读详情

相关推荐

示波器学习(一):示波器的作用、类型和基本结构

示波器的作用、使用场景;示波器的类型和基本结构介绍

qq_41300605的博客 9141

VB当中的新语法(一)

 VB当中的新语法(一) —— 匿名类型 上周跟大家介绍了LINQ在VB当中的应用之后,这次顺带介绍一下VB在这个版本中的改变,在VB 2008当中,配合LINQ新增了许多新的语法,底下这也是VB在建立对象时的新写法:   Dim stud1 As New students With {.name = "David", .score = 100} 上述指令会建立一个

dotnetWalker的专栏 1236

erdas监督分类(二)

去云 用一张没有云的影像替代有云影像 构建aoi图层 将云和云影编码合并 重编码工作 在监督分类做的差不多以后(纠正无误,无明显错误),就要对监督分类图像进行重编码和颜色调整。 在中选中Recode,对原来分类的地物类别进行重编码,(为彻底修改,记得备份)选中一列,在New Value输入新的编码,依次编码后点击应用apply,即可实现。 这时的图像如果是全黑的或者只有一两类的颜色也没有关系,新的编码覆盖掉了原来的编码,但是颜色并没有改变才会这样。可以点击图像,右击...

weixin_58968530的博客 958

struts2中常用Result类型的用法

一、dispatcher    (1)为缺省的result类型,一般情况下我们在struts.xml会这么写:    /main.jsp       以上写法使用了两个默认,其完整的写法为:    #    # /maini.jsp    #    第一个默认:type="dispatcher";第二个默认:设置的为loc

fatfatefat的专栏 403

【基金量化研究系列】基金绩效归因模型——Brinson多期归因模型之python实现

文章目录1. 引言2. Brinson多期归因模型的Python实现2.1 基准数据读取模块2.2 持仓数据读取模块2.3 持仓收益与基准计算模块2.4 Brinson多期归因模型核心算法Brinson_Multiple2.5 主函数模块3. 归因结果写在最后 1. 引言 在上文中,我们已经介绍了Brinson归因模型的基本思想。那么,就让我们动起手来,实现这一方法吧! 在Brinson多期归因模型实现的过程中,本文使用模块化方法,将整个实现过程划分为如下五个功能板块: Module 1: 基准数据读取模

Mikey_Sun的博客 2万+

研一小白投稿SCI:Applied Intelligence从提交到Under Review的保姆级避坑指南

本文为研一学生提供Applied Intelligence期刊投稿的详细指南,涵盖格式校验、状态解析及审稿回应策略。特别强调声明文件、LaTeX模板的常见错误及应对方法,帮助新手避开高频踩坑点,提升投稿成功率。

weixin_29230805的博客 494

VB基础语法

VB进行页面设计

泰勒今天想展开的博客 1万+

STM32H743IIT6+USB3300高速HID通讯实战:从CUBEMX配置到调试避坑全记录

本文详细记录了基于STM32H743IIT6微控制器与USB3300 PHY芯片实现高速USB HID通信的完整实战过程。内容涵盖从硬件选型、STM32CubeMX工程配置(重点规避引脚映射等常见陷阱)、自定义报告描述符编写,到驱动层数据收发实现与高级调试技巧的全链路解析,旨在帮助开发者快速构建稳定、高效的嵌入式高速数据通道。

vscode5coder的博客 365

VB.NET语法基础学习

例如,在以前的版本中,许多任务可以用多种不同的方法完成,统一的编码标准要么不存在,要么很难执行。NET语言的数据类型相匹配,Microsoft修改了整数类数据类型的表示方法,并加入了一个新的数据类型。Try开始一个启用错误控制的代码块,Catch标识一个对特定错误进行处理的代码块,Finally开始一个不管错误是否出现都必须执行的代码块,Throw抛出一个错误(类似于VB6的Err.Raise)。然而,VB.NET在这些方面的改进也要付出代价,许多旧的代码需要手工进行转换才能在VB.NET下运行。

chinaherolts2008的博客 2128

Android WLAN STA/AP 并发

Android 9 引入了可让设备同时在 STA 和 AP 模式下运行的功能。对于支持双频并发 (DBS) 的设备,此功能让一些新功能得以实现,例如在用户想要启用热点 (softAP) 时不会中断 STA WLAN。

华南烹鱼宴 1248

QML 地图修改插件源码(三),Map在Plugin中设置加载地图类型

常用的地图种类分为交通图,地形图,卫星图等等,在QML的Map(以OSM地图为例)中提供activeMapType属性用于读取当前显示的地图类型(注意:该属性为只读属性,不能用于赋值),QML中地图的加载寻找根据瓦片的文件名进行查找,例如名为"osm_100-l-5-2-2-3.png"的瓦片,其中5代表了该地图的类型

zjgo007的专栏 3165

VB基本语法

培训内容:   1. VB中的数据类型;   2. VB中的常量与变量;   3. VB中的运算符;   4. VB中的流程控制语句。   1、VB中的数据类型      基本数据类型 比较特别的有对象类型和变体类型。Object 对象类型可以简单的理解成为对控件对象的引用;Variant 变体类型可以算是VB中的特殊类型,由于它的存在常常让人对VB的数据类型检查产生误解。VB在变量

daniel112的专栏 3万+

Python 爬虫实战:美团大众点评餐厅数据爬取与分析

本文摘要:美团/大众点评餐厅数据爬虫实战指南 本文详细介绍了如何开发一个完整的餐厅数据爬虫系统,涵盖从环境配置到数据可视化的全流程。主要内容包括: 项目目标:爬取餐厅基本信息(名称、评分、价格等)及详情数据,支持市场分析和商业决策 技术方案:使用Python生态工具(Requests、Playwright、Pandas等)构建爬虫系统 核心挑战:破解大众点评的字体反爬机制和美团的API签名验证 实现细节:提供完整的代码示例,包括字体解析、签名生成、请求重试等关键功能 数据应用:支持将结果导出为CSV/Exc

u014481728的博客 319

经典VB与现代VB(VB.NET)

经典VB的淘汰是技术趋势(.NET替代COM)、市场需求(跨平台/云服务)、微软战略(转向C#)​共同作用的结果;VB.NET的“相对弱势”则是微软资源倾斜(C#优先)、开发者社区偏好(主流语言选择)、新兴领域适配不足的综合影响。VB并未完全消失——经典VB仍在遗留系统中运行,VB.NET仍是.NET生态的重要成员。其“淘汰”更多体现在主流开发市场的份额下降,而非彻底退出历史舞台。

qq_39980997的博客 1688

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

VB.Net - 基本语法

VB.Net是一种面向对象的编程语言。 在面向对象编程方法中,程序由通过动作相互交互的各种对象组成。 对象可能采取的动作称为方法。 相同类型的对象被认为具有相同的类型,或者更经常地被称为在同一类中。 当我们考虑VB.Net程序时,它可以定义为通过调用对方的方法进行通信的对象的集合。 现在让我们简单地看看类,对象,方法和实例变量是什么意思。 Object 对象 -对象具有状态和行为。 示例:狗有状态 - 颜色,名称,品种以及行为 - 摇摆,吠叫,吃饭等。对象是类的实例。Objects have states

chinaherolts2008的博客 752

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

VB学习过程(二)VB的语法基础和常用的内部函数

2013/10/28        语法基础: (1)顺序结构 Private Sub Form_Load() Dim Num1 As Integer , Num2 As Inteher Num1 = 1 Num2 = 2 MsgBox Num2 End Sub 程序由上到下依次执行,不存在任何的跳转或者循环,运行到End Sub。       这就

lxk7280的专栏 1万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

vb基础语法

5.1 VB语言字符集及编码规则 5.1.1 VB的字符集 l___字母:大写英文字母A—Z;小写英文字母a—z.l___ 数字:0一9;l 专用字符:共27个,P48表.5.1.2 编码规则与约定 (一)编码规则1.VB代码中不区分字母的大小写.2.同一行上可以书写多条语句,但语句间要用冒号":"分隔.3.若一个语句行不能写下全部语句,或在特别需要时,可以换行.换行时需在本行后加入续行符,1个空

4048

简要分析VB6.0和VB.NET区别

现在随着VB.NET的发展,大部分人都放弃使用VB6.0而选择VB.NET,下面我们就来研究一下VB6.0和VB.NET的区别。VB.NET是微软公司在2002年推出的一种开发基于.Net平台应用程序的开发语言,也是微软公司极力推荐的一种开发.Net平台应用程序的开发语言。首先还是让我们来简单了解一下VB.NET和其前一个版本,也是目前世界上拥有最多使用者的开发语言--VB 6.0的主要区别。 ...

夏晨Season的博客 1万+

VB6与VB7(VB.NET)的异同

刚刚开始VB.NET的学习,就本能的直接上手了视频的学习,但实在是能力有限,不能很好的理解材料中的内容,无奈之下,就看了一些VB的pfd的文件,希望从中受益些许。         如果学过VB6,现在又转而学习VB7的人,大概都会有类似本文的总结或思考,我也浏览过一些文章,下面是我在看过文章之后的一些简单整理。有不妥之处还请斧正。         PS:今天恰逢小年,算是给自己

王金龙 7969

vb cad activex不能创建_VB.Net 教学(二)基本语法

原文链接:VB.Net 教学(二)基本语法http://VB.Net是一种面向对象的编程语言。在面向对象编程方法中,程序由通过动作相互交互的各种对象组成。对象可能采取的动作称为方法。相同类型的对象被认为具有相同的类型,或者更经常地被称为在同一类中。当我们考虑http://VB.Net程序时,它可以定义为通过调用对方的方法进行通信的对象的集合。 现在让我们简单地看看类,对象,方法和实例变量是什么意思...

weixin_39672194的博客 212

VB语法简介

整型   Integer   –2147483648~2147483647   用于表示简单整数     字节型   Byte   0~255   用于简单算术运算。由于这个类型的变量可以在一个字节中存储,所以运算速度最快     短整型   Short   –32768~32767   是整型的一种形式,相对表示范围较小

zhangdepenghappy的专栏 4838

VB.NET与C#语法的比较

VB.NET and C# ComparisonThis is a quick reference guide to highlight some key syntactical differences between VB.NETand C#. Hope you find this useful!Thank you to Tom Shelton, Fergus Cooney, and other

≡≡奋斗中的猫≡≡ 2184

vb 和vb.net的区别

现在随着VB.NET的发展,大部分人都放弃使用VB6.0而选择VB.NET,下面我们就来研究一下VB6.0和VB.NET的区别。VB.NET是微软公司在2002年推出的一种开发基于.Net平台应用程序的开发语言,也是微软公司极力推荐的一种开发.Net平台应用程序的开发语言。首先还是让我们来简单了解一下VB.NET和其前一个版本,也是目前世界上拥有最多使用者的开发语言--VB 6.0的主要区别。 VB6.0和VB.NET的主要区别简介: 虽然说VB.NET是VB 6.0的后继版本,但在我看来VB.NET除了

chinaherolts2008的博客 4184

vb.net和c#的语法比较

学习三层有相当一段时间了,一直都在用c#练习。现在要开始vb.net版机房

思想上移,行动下移 2117
上一篇: VB当中的新语法(一)
下一篇: VB当中的新语法(三)
dotnetWalker
博客等级 码龄19年 289粉丝 69原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值