ActiveBasic使ってる人いる?
■ このスレッドは過去ログ倉庫に格納されています
0070デフォルトの名無しさん
2008/10/12(日) 18:45:58関数名、DLL名の部分はVBとABは共通なんだけど、C言語っぽくて、だけどそうでもなくて。
VB (ByVal hdc As Long, pbmi As BITMAPINFO, ByVal iUsage As Long, ppvBits As Long, ByVal hSection As Long, ByVal dwOffset As Long) As Long
AB ( hdc As HDC, ByRef pbmi As BITMAPINFO, iUsage As DWORD, ByRef ppvBits As DWordPtr, hSection As HANDLE, dwOffset As DWORD ) As HBITMAP
AB VBOld VB.net C
Integer 2byte 2byte 4byte 4byte(int)
引数 値渡し 参照渡し 参照渡し 値渡し
値渡しにするときはByVal、参照渡しにするときはByRefなので、キーワードが逆。
いろいろとC言語に近いところがあるけどVBに近いところもある。
行末の;がいらない、引数途中の改行で_がいらないとか、C言語とVBのいいとこ取りのようなそうでないような。
型が豊富に用意してあってコンパイラで警告くれるのはありがたい。
ひっかかるところ
ポインタ型はデフォルトで用意されたものしか使えない?
Functionではまる。Return命令を書くことができるけど、GoSubとセットで使うキーワード。
これがコンパイルできちゃってデバッグ実行でクラッシュする。
Functionの戻り値は関数名に代入だし、途中終了はExit Function。Exit~を補完してくれるのは助かる。
コンパイラが(想定外のコードで?)クラッシュする。原因がつかめなくて困る。
最初に親ウィンドウハンドルどこ?って思うけど、' ウィンドウ ハンドル: hMainWnd って書いてあったね。
インスタンスハンドルもどっかにあるんかな。
メッセージ分岐をいじろうとしてCallback.wbpを書き換えて断念したことがあったけど、
呼び出しもとのMainWndProcのEventCall_MainWnd呼び出し前に書けばよかったんだ。
ただ、API定義を別ファイルでやろうとして、どうするのか分からんかった。
■ このスレッドは過去ログ倉庫に格納されています