русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Структуры


Дата добавления: 2015-01-08; просмотров: 523; Нарушение авторских прав


Понятие структуры в C++ аналогично понятию класса, за исключением того, что если в классе все члены по умолчанию считаются закрытыми, то в структуре они по умолчанию открыты. Других отличий между классами и структурами нет.

Объявляются структуры с помощью ключевого слова struct. Например:

#include <iostream>

using namespace std;

 

struct CPU {

char Architecture[20]; // Микроархитектура

char Manufacturer[50]; // Производитель

char Model[30]; // Модель

unsigned int Frequency; // Частота, Мгц

unsigned short Cores; // Число ядер

unsigned short MFS; // Техпроцесс, нм

};

 

void main()

{

CPU i7;

strcpy(i7.Architecture, "Nehalem");

strcpy(i7.Manufacturer, "Intel");

strcpy(i7.Model, "Core i7-860");

i7.Frequency = 2800;

i7.Cores = 4;

i7.MFS = 45;

 

system("Pause");

}

Как видно из примера, работа со структурой ничем не отличается от работы с классом. При объявлении структуры так же создается абстрактный тип данных, для использования которого объявляются переменные такого типа – объекты.

В отличие от класса члены структуры по умолчанию открыты и в приведённом примере для доступа к ним извне не требуется использовать спецификатор public.

Наличие двух настолько похожих средств языка, как структуры и классы, объясняется тем, что структуры в C++ унаследованы от языка C, в котором не существует понятия открытых и закрытых членов (т.е. все члены структур открыты). Поскольку при разработке C++ значительное внимание уделялось его совместимости с C, то структуры были реализованы так, чтобы их можно было переносить из C-программ в программы на C++ без изменений.

Хотя в C++ структуры полностью поддерживают возможности объектно-ориентированного программирования, их рекомендуется использовать в стиле C – то есть в качестве записей, объединяющих различные поля в одном типе данных. Если кроме полей в этот же тип нужно включить функции по обработке данных (методы), то желательно использовать класс, а не структуру.





<== предыдущая лекция | следующая лекция ==>
Деструкторы | Объединения


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

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


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.167 сек.