vb.net – ‘if’语句和冒号
这是一个有趣的代码,我的同事们的团队成员只是稍微讨论一下…
Dim fred As Integer If True Then fred = 5 : fred = 3 : fred = 6 Else fred = 4 : fred = 2 : fred = 1 执行上述代码片段后,fred的值是多少? 尽量不要欺骗和调试代码. 这是一个高度引人入胜的代码示例,它以一个使用冒号为例的方式开始,但是有人决定自己去冒险为fred提供一个结果. 更新:
我假设你的意思是VB.Net.
根据VB语言规范的语法,您可以在这里阅读: http://www.microsoft.com/Downloads/thankyou.aspx?familyId=39de1dd0-f775-40bf-a191-09f5a95ef500&displayLang=en 结果应为“6”. 这是因为“行if语句”的语法是: If BooleanExpression Then Statements [ Else Statements ] StatementTerminator 和“声明”被定义为 Statements ::= [ Statement ] | Statements : [ Statement ] 编辑: 我曾经在微软的VB编译团队工作. 有时候规范是模糊的,或者与我们实际发货的不一致.在其中的几个例子中,解决方案(我们做了什么来解决它)总是基于“好…现在编译器做什么”. 有时我们会改变编译器,有时我们会改变规范. 但是,我们总是运行编译器来查看在做出决定之前它实际上做了什么. 所以…调试代码是弄清楚它的一个重要部分… (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |