library SomeOneCoolSpell{
private int Godi= 0
private GOD array God[100]
private struct GOD{
unit main
static thistype Create(unit u){
thistype g = thistype.create()
set g.main = u
set Godi= Godi+ 1
set God[Godi] = g
return g
}
}
}
В каждой библиотеке будет по структуре и я сделал их приватными. Вообще структур будет много. И дабы избежать наступания на грабли, я решил сделать глобал переменные структур приватными, как и сами структуры.
Но компилятор ругается. Я дурак?
Но компилятор ругается. Я дурак?
Принятый ответ
В конструкторе ты заносишь новосозданный объект не в God а в GOD, т.е. вместо переменной у тебя имя структуры.
Еще у тебя объявляется переменная до определения типа этой переменной, использовать GOD как тип переменной выше определения что это за тип GOD нельзя
Еще у тебя объявляется переменная до определения типа этой переменной, использовать GOD как тип переменной выше определения что это за тип GOD нельзя
code
library SomeOneCoolSpell {
private int GODi = 0
private keyword GOD // заранее объявляем тип
private GOD array God[100]
private struct GOD {
unit main
static thistype Create(unit u){
thistype g = thistype.create()
set g.main = u
set GODi = GODi + 1
set God[GODi] = g // исправил имя переменной
return g
}
}
}
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован Naadir
Отредактирован Naadir
Давай попробуем ещё раз. Каких граблей ты боишься? Что такое "грабли"? Какие проблемы у тебя могут возникнуть? Ты посмотрел ссылку? У тебя не схожая проблема? Если нет - извини, я подумаю, что ещё можно сделать.
Отредактирован Naadir
Посмотри по коду, не возникает ли у тебя ситуации, что приватная переменная используется в функции типа takes nothing returns nothing. В таком в takes укажи её. Иначе давай думать.
Отредактирован biridius
Еще у тебя объявляется переменная до определения типа этой переменной, использовать GOD как тип переменной выше определения что это за тип GOD нельзя
Два балона Балтики данному мужыку.