Примеры и основы
| |
SERPENT1987 | Дата: Четверг, 28.04.2022, 22:56 | Сообщение # 1 |
Подполковник
Группа: Администраторы
Сообщений: 100
Статус: Offline
| Данная тема для тех, кто только начал изучать язык C# и вообще имеет отдаленное представление, как и что работает в программировании. Поскольку данный язык весьма актуален в геймдеве, то в данной теме я буду рассказывать о возможностях языка и приводить примеры использования. Так же я планирую рассматривать самые основы. Ну и разумеется по мере возможности отвечать на вопросы.
Работа с World Editor, RPG Maker, UDK и прочие фишки.
|
|
| |
SERPENT1987 | Дата: Четверг, 28.04.2022, 23:16 | Сообщение # 2 |
Подполковник
Группа: Администраторы
Сообщений: 100
Статус: Offline
| Переменные в C#.
Переменные используются для временного хранения данных программы. Для постоянного хранения необходимо использовать уже базы данных, XML и прочее.
Как объявить переменную в C#?
Достаточно написать:
int a = 0;
В данном примере я объявил переменную a, типа int и присвоил ей значение ноль.
Переменную можно объявить и без присваивания ей значения:
int a;
В таком случае переменная будет создана, но будет иметь значение по умолчанию (для переменной типа int это 0)
В дальнейшем значение переменной можно изменить как вам угодно, но не тип! Тип переменной задается один раз при её объявлении. Например:
a = 5;
Переменная будет хранить в себе значение 5.
Далее вы можете снова изменить её значение как угодно используя тот же метод.
a = a + 3; В таком случае a будет равна 8. Так как раннее 5 там уже было.
А вот запись вида
bool a = true;
Уже не получится, так как переменная а уже объявлена с типом int.
Какие есть типы переменных в C# и что в них можно хранить:
Целые числа: sbyte, byte, short, ushort, int, uint, long, ulong
Числа с плавающей запятой: float, double, decimal.
Символы: char.
Логическая: bool.
Строка: string.
Целые числа: 5, 102, -543, -22, любые целые числа без запятой
Числа с плавающей запятой: 3,56, 1,354, -1,76, -234,5 | но можно поместить и целые числа 5, 43, -67 итд.
Символы: Любой символ, буква, цифра (не число, а именно цифра), знаки препинания и прочее.
Логическая: true или false. Истина или Ложь. Используется при различных проверках. Принимает только два этих значения.
Строка: Обычно запись вида "Любой текст с любым количеством символов и их типом" например спокойно можно хранить запись вида:
string a = "Test строка 136;№;%:,4аекр"
Это сработает без проблем.
Теперь вы знаете как объявить и использовать переменную в C#.
Структура:
Объявление:
Тип переменной имя (значение);
Пример:
bool a = true;
int a;
Обращение к переменной:
имя \\ указывать тип при обращении не нужно!
Пример:
a + b = c; сложение трех переменных
Console.Write Line(a); вывести значение переменной в консоль.
Работа с World Editor, RPG Maker, UDK и прочие фишки.
|
|
| |
SERPENT1987 | Дата: Пятница, 29.04.2022, 12:37 | Сообщение # 3 |
Подполковник
Группа: Администраторы
Сообщений: 100
Статус: Offline
| С чего начинается выполнение любой программы в C#
В данном языке программирования большая свобода действий, но выполняться любая программа должна с метода Main. Это обязательное условие. Ведь среда выполнения программы должна понимать, с какого места надо начинать выполнение кода. Как это выглядит:
using System;
namespacing Любое название { class Любое название { static void Main() { код
} } }
Что же означает это все мы сейчас и разберемся:
using System; мы будем использовать пространство имен System, это базовое пространство имен.
Для чего оно нужно?
В пространстве имен определены функции и методы которые используются в программировании на C#, грубо говоря это набор функций, с описанием того, как они должны работать.
Например если не прописать в начале кода using System;, то программа не сможет прочитать запись типа int a = 3;, она сама не умеет этого, а вот прочитав System, она поймет как с этой записью работать.
class позволяет разбивать код на подпрограммы и использовать эти подпрограммы (методы) в дальнейшем.
static void Main () - Это метод класса. В нашем примере это единственный и основной метод. Но например если код программы большой, то для избежания путаницы вы захотите сами использовать различные классы и методы. Один класс может содержать любое количество методов. Но много методов тоже плохо - вы можете в них элементарно запутаться.
static говорит о том что метод статичен.
void означает что метод не возвращает никаких значений
() говорят о том что метод не принимает никаких параметров.
static, void, () это изменяемые данные, равно как и другой метод вы не сможете назвать Main.
пример метода Main
#######################
using System;
namespacing MyApp { class Hello World { static void Main() { Console.WriteLine ("Hello World!"); } } }
########################
Данный код скомпилируется без проблем в любой IDE и при запуске программы выведет в консоль фразу Hello World!
Работа с World Editor, RPG Maker, UDK и прочие фишки.
|
|
| |
SERPENT1987 | Дата: Пятница, 29.04.2022, 18:43 | Сообщение # 4 |
Подполковник
Группа: Администраторы
Сообщений: 100
Статус: Offline
| Реализация условий в C#
Тут с этим довольно просто. Но не совсем. Есть две конструкции для реализации проверки условий.
Первая из них if else
Пример ############################
if (i == 3) { a = 5; }
############################
Разбираем конструкцию:
Если i равно 3 то выполняем действия {}
Пример 2:
#####################
if (a == true) { b = 5; } else { b = 3; }
#####################
Если переменная а равна истине (true) то выполняем b = 5;, иначе b=3;
В целом очень просто.
Есть и иной метод реализации проверки условий switch case.
Допустим у нас есть переменная a, которая может быть равно 0, 1 или 22. Через if else очень громоздко. Вот тут уже switch идеален.
#######################
switch (a);
case 0:
b = 1
break;
case 1:
b = 18;
break;
case 22:
b = 31
break;
########################
Разбираем пример:
switch получает значение из (а) и проверяет его в функции case.
Таким образом не пришлось 3 раза писать
if(a == ?)
А если например у а может быть 15 значений? Оптимизация в разы.
А если переменная принимает 500 значений а нам нужно только 3 и один вариант на все остальные? На if такое вообще очень трудно реализовать, А если значений 60 000?
Тут поможет только switch.
switch (a)
case 1:
a = 3;
break;
case 2:
a = 546;
break;
default:
a = 45;
break;
Что же за чудо default такой? А все просто. Если ни один из кейсов не совпадает то срабатывает то, что в функции default (по умолчанию).
Вот такие простые методы реализации условий в языке C#.
Работа с World Editor, RPG Maker, UDK и прочие фишки.
|
|
| |
|