ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年3月28日(木) 22:42

全ての表示時間は UTC+09:00 です




返信する
ユーザー名:
件名:
メッセージ本文:
メッセージを入力してください。60000 字まで入力できます。 

フォントサイズ:
フォントカラー
オプション:
BBCode: ON
[img]: ON
[flash]: OFF
[url]: ON
スマイリー: OFF
BBCode を無効にする
URL を自動的にパースしない
クイズ
お手数ですがカタカナで「エービー」と4文字を入力してください。:
答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。
   

トピックのレビュー - Interfaceキーワード @AB4
作成者 メッセージ
  記事の件名:  Re: Interfaceキーワード @AB4  引用付きで返信する
AB5ではコンパイルエラーとなります。
ちなみにAB5 CP5最新でコンパイルしてみたら

D:\APPLTEST\test.bas(6) : クラス以外の型を継承元として指定することはできません。
コンパイル中...
D:\APPLTEST\test.bas(13) : 内部エラー
D:\APPLTEST\test.bas(15) : [警告] *TestImplから*ITestに強制変換されています。

-----------------------------------------------------
コンパイルは中断されました(エラー:2、警告:1)。

です。
投稿記事 Posted: 2012年2月22日(水) 21:52
  記事の件名:  Interfaceキーワード @AB4  引用付きで返信する
http://d.hatena.ne.jp/dai_optimistic/20060523
なんと今のAB4には既にInterfaceがあるそうです。

というわけで早速試してみました。(AB 4.24)
コード:
Interface ITest
	Sub Hello()
End Interface

Class TestImpl
	Inherits ITest
Public
	Sub Hello()
		MessageBox(0, "Hello world", "TestImpl", MB_OK)
	End Sub
End Class

Dim ti As TestImpl
Dim pTest As *ITest
pTest = VarPtr(ti)
pTest->Hello()
End
ProjectEditorではInterfaceがキーワードとして色付けされることにも驚かされました。

コンパイルして実行してみると,なるほどHello worldは表示されました。
しかし最後のEndが無いとアクセス違反になってしまいます。
個人的には関数の呼び出し方式が一致していないのではと勘ぐっていますが検証していません。
投稿記事 Posted: 2006年5月23日(火) 23:05

全ての表示時間は UTC+09:00 です


ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean