Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > BlitzMax

Ответ
 
Опции темы
Старый 26.08.2011, 23:18   #1
Dzirt
Элита
 
Аватар для Dzirt
 
Регистрация: 16.01.2008
Сообщений: 1,800
Написано 958 полезных сообщений
(для 3,833 пользователей)
значение обьекта

Вот суть траблы по пунктикам:
1.создаю обьект
 Local Point:PointT = New PointT
2.Добавляю значение в х
Point.x =12
3.Добавляю обьект в список ранее созданый
points_List.AddLast Point
4.Создаю новый обьект с параметрами последнего из списка
Local Some:Object =  PointT (points_List.Last())
5.И вот тут начинаются проблемы....никак в документации немогу найти как правильно взять значение с только что созданного обьекта...при ниже приведеном коде выдает ошибку..
(???)
Var_What_Need = Some.x
(???)
(Offline)
 
Ответить с цитированием
Старый 26.08.2011, 23:35   #2
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: значение обьекта

Graphics 800,600,0,60,0

Global POINT_LIST:TList = New TList

Type TPoint
Field X

Function Create:TPoint(X)
Point:TPoint = New TPoint
Point.X=X
ListAddLast(POINT_LIST,Point)
Return Point
EndFunction

EndType


Global P1:TPoint = TPoint.Create(10)
Global P2:TPoint = TPoint.Create(TPoint(POINT_LIST.Last()).X)

Repeat
Cls()

DrawText(P1.X,10,10)
DrawText(P2.X,10,20)
DrawText(POINT_LIST.Count(),10,30)

Flip()
Until KeyHit(KEY_ESCAPE)
End
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Dzirt (27.08.2011)
Старый 27.08.2011, 00:17   #3
Dzirt
Элита
 
Аватар для Dzirt
 
Регистрация: 16.01.2008
Сообщений: 1,800
Написано 958 полезных сообщений
(для 3,833 пользователей)
Ответ: значение обьекта

Спасибо, но никак не пойму почему я немогу взять значение из обьека при создании его своим способом....дебагер показыает что все параметры он унаследовал....но при попытке к ним обратится говорит что х из обьекта Some.x не существует (повторюсь что в дебагере они нормально отображаются..)
Как это принято при таких случаях писать - чтото голова не варит вообще
(Offline)
 
Ответить с цитированием
Старый 27.08.2011, 00:22   #4
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: значение обьекта

Дак приведи код полностью...
__________________
(Offline)
 
Ответить с цитированием
Старый 27.08.2011, 00:40   #5
Dzirt
Элита
 
Аватар для Dzirt
 
Регистрация: 16.01.2008
Сообщений: 1,800
Написано 958 полезных сообщений
(для 3,833 пользователей)
Ответ: значение обьекта

как правильно взять значение Some.x и перенести его в Need_Var?
Graphics 800,600,0,60,0

Global points_List:TList = New TList

Type PointT 

	Field x
	
		Function Create_New:PointT(x)
					Local Point:PointT = New PointT
					Point.x =x
					points_List.AddLast Point
					
					Local Some:Object =  PointT (points_List.Last()) 
				
					'Если дебагнуть - то видно что Some все унаследовал, но как взять значения?
					DebugStop
					
					If Some<>Null
						'Need_Var = Some.x
					EndIf	
					
		EndFunction	
End Type

PointT.Create_New(12)

End
(Offline)
 
Ответить с цитированием
Старый 27.08.2011, 00:55   #6
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: значение обьекта

И откуда же у Object поле x?
Local Some:Object = PointT (points_List.Last())
Some должен быть типа PointT. Данная конструкция вообще работает только потому, что PointT автоматически наследуется от Object.
Graphics 800,600,0,60,0

Global points_List:TList = New TList

Type PointT 
	Field x
End Type

Point1:PointT = New PointT
Point1.x = 5
points_List.AddLast(Point1)

Point2:PointT = PointT(points_List.Last())

While Not KeyHit(KEY_ESCAPE)
	Cls()
	DrawText(Point1.x, 10, 10)
	DrawText(Point2.x, 10, 25)
	Flip()
Wend

End
и кстати - PointT(points_List.Last()) вот это потом приведет к другим проблемам. Копируй объекты вручную.
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Dzirt (27.08.2011)
Старый 27.08.2011, 01:00   #7
Dzirt
Элита
 
Аватар для Dzirt
 
Регистрация: 16.01.2008
Сообщений: 1,800
Написано 958 полезных сообщений
(для 3,833 пользователей)
Ответ: значение обьекта

Точно....столько инфы перерыл, а ответ был так близок....
Спасибо, не знаю столько бы еще искал в чем причина =)
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 01:35.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com