class DarkRaha extends com { // разработка приложений
            String a="Главная" b="Контакты" c="О сайте"
};

STL

основы

введение
Инструментарий
Проекты в C++
Комментарий
Утверждения
Идентификаторы
Область видимости
Литералы
Типы данных, переменные
Константы, перечисления
Выражения и операции
Агрегатные типы
Указатели
Ссылки
Массивы
Строки
Управляющие операторы
Функции
Аргументы функции

ООП

Терминология
Определение классов
Константные методы
Статические члены
Наследование
Инкапсуляция
Полиморфизм
Инициализация и уничтожение объектов
this

прочее

шаблоны
макросы
динамическая память
исключения
rtti

Справочник по C++

Определение классов

Для определения нового класса используется ключевое слово struct или class. Слово union используется редко, так как такие классы не могут учавствовать в построении иерархии классов. В теле класса объявляются члены данных аналогично переменным, но без инициализации, методы аналогично функциям, а также можно определить локальные для класса новые типы данных.

Член данных не может быть того же типа, что и объявляемый класс. Методы определенные в теле класса по возможности рассматриваются как методы с атрибутом inline. Для определения метода вне тела класса используется операция расширения видимости ::.

/* базовое правило определения класса:
struct|class имя_класса
{
// объявление членов и локальных типов
// ...
};
*/

#include <iostream>
using namespace std; 

struct MyClass; // объявление класса
struct MyClass { // определение класса
 
 // определение локальных типов
 class LocalClass {
	int a,b;
	public:
	void metod(){a=a-b;}
	};
 enum lcolor {red,green,blue};

// члены данных
int a,b; 
LocalClass c;

// определение метода
int sum(){return a+b;} 
// объявление метода
int mul();
};

// объявление метода вне тела класса
int MyClass::mul(){return a*b;}

int main() {
MyClass cls, *pcls=&cls;

// доступ к членам класса
cls.a=10;
cls.b=20;
cout<<"cls.sum()="<<cls.sum()<<endl;

// доступ к членам по указателю
pcls->a=15;
pcls->b=25;
cout<<"pcls->sum()="<<pcls->sum()<<endl;
return 0;
}

Рейтинг@Mail.ru