Ин Руби, не морате да декларишете променљиве, али морате да им доделите нешто пре него што се могу упутити.
Ако мислите на а локална променљива која још не постоји, можда ћете видети једну од две грешке.
Руби НамеЕррор поруке
НамеЕррор: недефинисана локална варијабла или метода `а 'за #
НамеЕррор: недефинирана локална варијабла или метода `а 'за маин: Објект
Белешка: Уместо њих могу бити различити идентификатори 'а' горе.
Ово је пример где ће код генерисати Руби поруку „НамеЕррор“ од променљиве а још увек није додељено ничем:
ставља а
Како исправити грешку
Варијабле морају бити додељене пре него што се могу користити. Дакле, користећи пример одозго, исправљање грешке је једноставно као и ово:
а = 10. ставља а.
Зашто добијате ову грешку
Очигледан одговор је да упућујете на променљиву која још није створена. То се најчешће десило због грешке у куцању, али може се догодити приликом поновног факторирања кода и преименовања променљивих.
Такође можете видети грешку „НамеЕррор: недефинисана локална променљива“ ако желите да унесете низ. Низови се разумеју када постоје између цитата. Ако нисте користили наводнике, Руби ће помислити да сте мислили да референцирате на неку методу или променљиву (која не постоји) и да ће бацити грешку.
Дакле, погледајте свој код да бисте видели на шта се ова променљива односи и исправите је. Можда ћете желети потражити и друге инстанце истог имена променљиве у истом методу - ако је погрешно на једном месту, на другим може бити погрешно.