注册 登录
编程论坛 ASP技术论坛

求证此代码的意思,不知道我理解的是否正确

sky222 发布于 2010-03-25 09:59, 991 次点击
IF Not isConnect = True Then Connect:End IF


如果没有连接,那么连接 : 这个:是代表什么?不明白
13 回复
#2
风吹过b2010-03-25 10:05
这个:是代表什么?不明白


冒号在 ASP ,BASIC 语言里,表示冒号后面是另一个语句.

BASIC (ASP沿用此设置) 里,规定 一行的字符不能超过 255 (现在WINDOWS平台不记得是多少了,但也有一个限制).
以回车换行符为结束一行.
但是,在很早的 BASIC 里,程序的行数都有限的情况下,为了充分利用行长,就产生了使用 冒号 来分隔一行里的 命令.
如经典的BASIC 里的命令
while inkey$="" : wend
这行的代码实际也是分为二条命令, 这二条命令的作用是 ,按任意键继续.起到程序显示中暂停的功能.现在VB及VBA ,不需要这样的命令了.
#3
sky2222010-03-25 10:11
那么后面不是语句有个end if 了

结束了,这个冒号还有作用。

#4
yms1232010-03-25 10:25
IF Not isConnect = True Then Connect
当IF语句要写在一行时不需要End IF。
#5
sky2222010-03-25 10:28
恩,写在同一行,可以省略end if。

就是说刚刚那条代码其实  :后面的内容包括“:”都是没有意思的。是不是?

那么这条代码的意思就是《如果没有连接,那么连接》?

好像读不通,还是我理解有问题
#6
apull2010-03-25 10:32
vb中冒号用来在同一行里写多个语句。。
a=5:b=c:d=3
类似的
IF Not isConnect = True Then Connect:End IF
相当于
IF Not isConnect = True Then Connect
End IF

不过在vb中,if里如果只有一条语句,而且写在了一行,那么不需要写end if了。
#7
yms1232010-03-25 10:34
IF Not isConnect = True Then Connect
在ASP的VBScript里
函数调用可以不写()直接函数名调用比如
Function A()
   Response.Write "这是一个函数"
End Function
直接
A
就调用了函数
所以Connect可能也是函数,因为直接写变量名执行时会出错误。
#8
sky2222010-03-25 10:36
呵呵,谢谢各位进来解释,非常谢谢。

我是刚刚接触asp所以有很多不明白的地方,

现在这个代码语句是明白了。

但是怎么翻译,理解能力还差一点,希望大家帮我翻译一下

IF Not isConnect = True Then Connect  '如果没有连接,那么连接

#9
sky2222010-03-25 10:39
是不是这段
程序代码:
Public Sub Connect()
        GetConnStr
        IF isObject(dbConn) = False or isConnect = False Then
            On Error Resume Next
            Set dbConn=Server.CreateObject("ADODB.Connection")
            dbConn.open ConnStr
            isConnect = True
            IF Err Then errid=Err.number:errdes=Err.description:Err.Clear:dbConn.close:Set dbConn=Nothing:isConnect = False:ShowErr errid,errdes:End IF
        End IF
    End Sub
忘斑竹解释一下,看不懂了


Connect变量,好像没什么值?

[ 本帖最后由 sky222 于 2010-3-25 10:41 编辑 ]
#10
czyzhuo2010-03-25 13:01

IF Not isConnect = True Then Connect:End IF
这个是语句书写的格式问题,你如果把End IF写在这句的后面,就要加个冒号
#11
czyzhuo2010-03-25 13:02
IF Not isConnect = True Then Connect:End IF
相当于
IF Not isConnect = True Then
    Connect
End IF
#12
hmhz2010-03-25 13:21
该换行的时候还是要换行,不要一味的追求简洁,导致将来不方便维护,因为代码都堆积在一起就不方便阅读了
#13
sky2222010-03-25 16:13
呵呵,谢谢了。
#14
笨笨林2010-03-29 16:26
还是第一次看到这样的写法。学习了
1