Тема: TMethod?
Показать сообщение отдельно
Старый 24.05.2009, 23:24   #12
dimanche13
Мастер
 
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений
(для 252 пользователей)
Ответ: TMethod?

Сообщение от Randomize Посмотреть сообщение
массив функций в типе...
Можно больше деталей? Это любопытно.
ну очень просто.
пример собран на коленке, не проверял.

SuperStrict

Type myType

	Field callback()[]

	Method add_function( num:Int, func() )

		If( callback.length - 1 < num ) Then 
			callback = callback[ .. num + 1]
		End If

		callback[ num ] = func
	End Method

	Method run_all()
		For Local func() = EachIn callback
			func()
		Next
	End Method

End Type

Function func_1()
	Print "func_1"
End Function	

Function func_2()
	Print "func_2"
End Function	

Function func_3()
	Print "func_3"
End Function	

Local bugoga:myType = New myType

bugoga.add_function( 0 , func_1 )
bugoga.add_function( 1 , func_2 )
bugoga.add_function( 2 , func_3 )
bugoga.add_function( 3 , func_1 )

bugoga.run_all() ' пройдемся по всем функциям

end
блин поставил намедни 1.33 рс5 и перестала документация компилиться, а потом и всё перестало компилиться. Жалуется на шквал. Но я его блин даже не юзал никогда, тока проверял враппер. Может скажет кто как починить? Я уже на 1.30 откатился - та же фигня...
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Randomize (26.05.2009)