- •1.Истроия создания. Стандарт ansi c.
- •2. Структура программы.Алфавит.Осн конструкции языка
- •3. Типы данных.
- •4. Переменные,идентификаторы, константы.. Модуль Math.H
- •7. Директивы препроцессора.
- •1)Передача копии переменной
- •15, Обл.Видимости.Классы памяти
- •16, Строки.Ф-ции раб.Со строками.
- •17. Указатели и ссылки.
- •18. Динамическое выделение памяти. Свободная память.
- •19, Файлы
- •21. Ооп. Механизмы ооп.
- •23. Конструкторы. Деструкт
- •24. Наследование.
- •25. Множественное наследование. Неоднозначности множ наслед-я.
- •26. Полиморфизм. Перегрузка ф-ции.
- •27.Функции-друзья
- •28. Полиморфизм. Перегрузка операторов.
- •29. Перегрузка нек-х спец-х операторов.
- •32. Шаблоны ф-й
- •33. Шаблоны классов
- •34. Шаблоны. Реализация свойств наследования и полиморфизма.
- •35. Обработка исключений
- •41. Компоненты вкладки standard.
- •42. Компоненты вкладки additional
- •43. Компоненты win32.
- •46. Элементы ActiveX.
- •66. Использование встроенного ассемблера
- •59, Свойства с#.
- •51, Основные понятия яз-ка с#.
- •55, Яп с#. Массивы. Конструкция foreach.
- •52. Яп с#. Ветвление. Циклы. Примеры программ.
- •54. Яп с#. Класс, объекты, поля и методы, конструкторы, деструкторы.
- •2)C параметрами:
- •57. Яп с#. Наследование. Абстрактные классы.
- •48. Нормализация таблиц
- •50. Компоненты доступа к бд
- •56. Яп с#. Символы и строки. Класс Random.
- •58. Яп с#. Вложенные, изолированные классы и класс Object.
- •60. Яп с#. Интерфейсы.
- •61. Делегаты,события.
- •62.Создание приложений с графическим интерфейсом.
- •38. Система меню
54. Яп с#. Класс, объекты, поля и методы, конструкторы, деструкторы.
Класс — это тип, определяемый програм¬мистом, в котором объединяются структуры данных и функции их обработки.
Конкретные переменные типа данных «класс» называются экземплярами класса, или объектами.
Класс содержит константы и переменные, называемые полями, а также выполняемые над ними операции и функции. Функции класса называются методами. Предполагается, что доступ к полям класса возможен только через вызов соответствующих методов. Поля и методы являются элементами, или членами класса.
Рассмотрим простейший пример класса:
Namespace Myn_s{
Using System;
Public class MyClass{
Public MyClass(unit a){
This.a=a;
}
Public int f() {return 1;}
Private unit a,b;
}
Public class Tester {
Static void Main() {
MyClass mc=new MyClass(5);
MyClass mc1=new MyClass();
}
}
Примечание1. Классы в С# могут объединяться в одно пространство имен.
Примечание 2. Функция Main() реализуется в отдельном классе.
Примечание 3. Модификаторы доступа необходимо указывать перед каждым объявлением полей и методов класса, а так же перед классом.
Объекты в C# в обязательном порядке должны инициализироваться с помощью ключевого слова new.
Помощью сборщика мусора освобождается память под объекты. Сборщик мусора работает автоматически.
Конструкторы. Деструкт
К-р-предст соб спец ф-ю для инициализации полей кл,котор можно вызывать при создании объекта кл. Назначение конструктора -- устано-вить начальные значения членов класса, а также выполнить необходимые начальные действия при создании объекта. Имя конструктора совпадает с именем класса. Конструктор может иметь аргументы, может быть несколько конструкторов с разными наборами аргументов.
Конст-ор опр, каким образом новый объект типа класса будет создан, как будет проводиться выделение памяти и инициализация объекта/
Пр.Class ch { public: Void f(inta);
Private: Inta; } Cl c; c.f(5);
Пр с использ-ем констр-ра примера кот на-ход выше:
Class ch { Public; Ch(int a)
Private: Int a; } Cl::ch(int a)
{ this->a=a; }
Описание кл происх сл образом:сначало указ имя кл,затем в () указ передаваемые парамет-ры.Вызывается к-р автоматич при создании объ-екта кл
Виды к-ра:
1)По умолчанию- без параметров.Внутри кл они описыв так:
Class cl { public: Cl();……
2)C параметрами:
Class cl { public; Cl(int a); Private }; Int b
Деструкторы.
Спец ф-я,но в отличие от к-ра параметры не передаются.Всегда () пустые. Деструкторы на-следуют имена своих классов, с добавлением лидирующего знака тильда '~' Объявляюте:
Class cl { public: Cl(int a); ~cl(); Private:};