アプリ版:「スタンプのみでお礼する」機能のリリースについて

こんにちは。
ASPでのレコードセットオブジェクトの閉じ方について質問です。

レコードセットオブジェクト(以下:rs)を閉じる際に
(1)カッコをつけない場合 → rs.close
(2)カッコをつけた場合  → rs.close()
とで、何か違うのでしょうか?

「On Error Resume Next」をつけていないプログラムでも、どちらも正常に動作します。
普段はカッコを付けずにコーディングしているのですが、たまたまカッコが付いているプログラムを発見したので質問いたしました。

よろしくお願いいたします。

A 回答 (1件)

ASP で VBscript使用ということでよろしいでしょうか?



結論から言いますとどちらも同じです。

プロシージャやメソッドなどの呼び出し時にカッコは省略できるのが暗黙のルールになっているのでこのようなことができるだけです。
(一部省略してはいけない場合があります。ご注意ください)

Close は引数が必要ない関数なのでわかりにくいですが、

Response.Write "ABC"
Response.Write("ABC")
これも同じ動作をします。
ただし、この場合一般的には
Call Response.Write("ABC")
と記入します。
こうすることにより「Response.Write」というメソッド(またはプロシージャ)を実行していることを「明示的」に表現できるためです。

参考までに「つけなくてはいけない」場合を何点か。。。
1.Function の呼び出しで引数がある場合(無い場合はカッコが無くても良い) → strA = FuncA("ABC")
2.Call による呼び出しで引数がある場合(無い場合はカッコが無くても良い) → Call SubA("XYZ")
などが該当します。
つける・つけないをそのたびに考えていたのではバグの元になりますので、常にカッコを付ける習慣を付けることをお勧めします。
    • good
    • 0
この回答へのお礼

Response.Write の例題で「なるほど!確かに!」と思いました! とても分かりやすいご説明と例題をありがとうございました!

お礼日時:2005/12/11 21:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!