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 нельзя
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
		}
	}
}
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
16
Bornikkeny:
Посмотри по коду, не возникает ли у тебя ситуации, что приватная переменная используется в функции типа takes nothing returns nothing. В таком в takes укажи её. Иначе давай думать.
22
Naadir:
Bornikkeny:
Посмотри по коду, не возникает ли у тебя ситуации, что приватная переменная используется в функции типа takes nothing returns nothing. В таком случае она должна забирать эту переменную.
Нет. Чел, мне кажется что ты не шаришь. Так же как и я. Давай, найдем тех кто шарит, а пока, подождем.
22
В конструкторе ты заносишь новосозданный объект не в 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
		}
	}
}
Принятый ответ
22
biridius уже превосходит богов! Кто-нибудь остановите его!
Два балона Балтики данному мужыку.
30
Godi
Венгерская нотация неэффективна, попробуй просто называть переменные по их существу.
22
Clamp:
Godi
Венгерская нотация неэффективна, попробуй просто называть переменные по их существу.
Та это я чисто ради примера говнокод написал. Даже название либы почитай (SomeoneCoolSpell).
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.