http://vendetta.bloghome.com.tw/
時間記憶
最新評論
我的公告
我的相冊
最新留言
我的好友
用戶登入
友情連結
部落信息



日誌
全域變數到了副程式突然憑空消失的原因!! | 2007/6/15 上午 11:12:00
嗯,今天又有一個心得,把以下程式碼存成asp程式,丟到server上跑,看看結果!!
showStr2與showStr的唯一差別就是showStr2在response.write 之後多呼了一個Dim
我原本以為在Dim之前,str的值還是全域變數的值,結果有重大發現:
那就是在Dim的執行順序不重要,如果是在某個指令之後執行Dim,一樣也會影響前面的指令行。
這是花了我一個多小時除bug的心得,希望不要有人跟我掉入一樣的語法誤用。

<%
Dim str
str = "Hello!!"
Response.Write "str=" & str & "<br>"
Call showStr()
Call showStr2()

Sub showStr()
 Response.Write "str=" & str & "<br>"
End Sub

Sub showStr2()
 Response.Write "str=" & str & "<br>"
 Dim str
End Sub
%>

閱讀全文 | 回復(0) | 引用通告 | 編輯 | By: V怪客

發表評論:

    大名:
    密碼: (遊客無須輸入密碼)
    主頁:
    標題:
Design by blog.nfhot.com / Copyright http://nfhot.com 2006-2008 reserved
Powered by 家天下 Hosted By: