KNOW INTUIT, Лекция, Променливи и изрази
Локални променливи
Сега се обръщаме към разглеждането на локалните променливи. Останалата част от тази лекция ще бъде посветена на този най-важен вид променливи. Във всички езици за програмиране, включително C#, основният контекст, в който се появяват променливите, са процедурите. Променливите, декларирани на ниво процедура, се наричат локални - те са локализирани в процедурата.
Нека разгледаме един пример. Метод с име ScopeVar е добавен към класа Testing и се извиква в процедурата Main. Ето кода за този метод:
Имайте предвид, че в тялото на метода има имена на полета, аргументи и локални променливи. Тези имена може да са еднакви. Например името x има поле за клас и аргумент за формален метод. Това е приемлива ситуация. В C# е позволено да има локални променливи с имена, които съвпадат с имената на полетата на класа - в нашия пример това е името y ; въпреки това е незаконно да има локални променливи, чиито имена съвпадат с имената на формалните аргументи. Тази забрана важи не само за външното ниво на процедурния блок, което е съвсем естествено, но и за всички вътрешни блокове.
Изразът, който се тества в израза if, зависи от стойността на полето за име. Стойността на полето е глобална за метода и е налична навсякъде, освен ако не е заменена от име на аргумент (както в случая с полето x) или локална променлива (както в случая с полето y).
Глобални променливи на ниво процедура. Има ли?
Моля, имайте предвид, че подобни решения, взети от създателите на езика C#, не само улесняват живота на разработчиците на преводачи. Те спомагат за подобряване на ефективността на програмите и най-важното, повишават надеждността на програмирането на C#.
C# константите могат да се появяват, както обикновено, като литерали и именуваниконстанти. Ето пример за константа, дадена от литерал и появяваща се от дясната страна на оператор за присвояване:
Стойността на константата " 7.7f " е в същото време нейното име, също така ви позволява да определите уникално типа на константата. Имайте предвид, че понякога, както в този случай, трябва да добавите специални знаци към стойността, за да посочите точния тип. Няма да се спирам на тези подробности. Ако има нужда да се изясни как се пишат литералите, тогава е достатъчно да получите помощ по тази тема. Всичко се прави по същия начин, както в C++.