ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2017年11月23日(木) 23:42

All times are UTC+09:00




新しいトピックを投稿する  トピックへ返信する  [ 2 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2006年5月23日(火) 23:05 
オフライン

登録日時: 2005年5月31日(火) 17:59
記事: 895
住所: 東京都
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: 2012年2月22日(水) 21:52 
オフライン

登録日時: 2006年2月05日(日) 17:10
記事: 189
住所: 東京都
AB5ではコンパイルエラーとなります。
ちなみにAB5 CP5最新でコンパイルしてみたら

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

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

です。


通報する
ページトップ
期間内表示:  ソート  
新しいトピックを投稿する  トピックへ返信する  [ 2 件の記事 ] 

All times are UTC+09:00


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[1人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by KONISHI Yohsuke