ab.com コミュニティ
https://www.activebasic.com/forum/

関数ポインタ型のメンバ変数
https://www.activebasic.com/forum/viewtopic.php?t=132
ページ 11

作成者:  pmh [ 2005年6月25日(土) 22:40 ]
記事の件名:  関数ポインタ型のメンバ変数

コード:
Class CTest
Public
	pFunc As *Sub()
	
	Sub Func1()
		pFunc = AddressOf(Func2)
		pFunc() 'エラーになる
	End Sub
End Class

Sub Func2()
End Sub

Dim c As CTest
'Dim pFunc2 As *Sub() 'これを入れるとエラーにならない
c.Func1()
上のように、関数ポインタ型のメンバ変数から直接関数を呼び出そうとすると、
「"pFunc"のパラメータ指定が間違っています」
というエラーが出ますが、これはバグでしょうか。
(別の場所で同じ型の変数を宣言していると、なぜかエラーになりません。)

作成者:  山本 [ 2005年6月25日(土) 23:22 ]
記事の件名: 

ご報告ありがとうございます。

関数ポインタをクラスメンバとして定義したときに、それを正常に呼び出せなくなるバグを確認いたしました。次回のバージョンアップにて修正しますので、今しばらくお待ちください。

作成者:  高信期 [ 2005年6月30日(木) 01:44 ]
記事の件名: 

TypeDefした関数ポインタをクラスメンバに定義すると
「文法が間違っています」
とエラーが出ます。

作成者:  山本 [ 2005年6月30日(木) 09:12 ]
記事の件名: 

こちらでも現象を確認できました。次回のバージョンアップで修正します。

ページ 11 全ての表示時間は UTC+09:00 です
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/