PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Передача непростой структуры в процедуру


Передача непростой структуры в процедуру

Сообщений 1 страница 5 из 5

1

сама структура

Код:
сама информация
Structure grab2
i.i
x.a
EndStructure

вместо трёх переменных
Structure grab
r.grab2
g.grab2
b.grab2
EndStructure

так вызывать надо

Код:
newCur(@grb\r)
newCur(@grb\g)
newCur(@grb\b)

как принять?

Код:
Procedure newCur(????)
и как тут обращаться к нужнму полю
EndProcedure

всё это можно сделать одной структурой на трёх переменных, но захотелось сделать на одной переменной, научный тык непомог :dontknow:

0

2

Код:
Structure grab2
  i.i
  x.a
EndStructure

Structure grab
  r.grab2
  g.grab2
  b.grab2
EndStructure

Procedure Proc(*s.grab)
  Debug *s\b\x
EndProcedure

s.grab\b\x = 2

Proc(s)

+1

3

Спасибо Пётр, переделаю
таки пока на трёх переменных сделал

ну и сам такое "придумал"
как вариант структуру r, g, b заменить на карту, ещё проще получается, только ключ нужного элемента карты передавать

0

4

не, Пётр, это стандартно, сейчас так и сделано, сразу не понял, а полез пробовать, оно и вылезло
вопрос другой
надо передавать одно из полей

Код:
newCur(@grb\r)
newCur(@grb\g)
newCur(@grb\b)

яж незнаю что передалось, как в этом случае принять
Procedure newCur(*grb.grab)
  Debug *grb\????????????\x
  Debug *grb\????????????\i
EndProcedure

0

5

Код:
;сама информация
Structure grab2
  i.i
  x.a
EndStructure

;вместо трёх переменных
Structure grab
  r.grab2
  g.grab2
  b.grab2
EndStructure

Procedure newCur(*grb.grab2)
  Debug *grb\x
  Debug *grb\i
EndProcedure

grb.grab

newCur(@grb\r)
newCur(@grb\g)
newCur(@grb\b)

0


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Передача непростой структуры в процедуру