Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

Разница между структурой и классом:объяснение на примере C++

Что такое структура?

Структура – это определяемый пользователем тип данных, который объединяет логически связанные элементы данных разных типов, таких как float, char, int и т. д., вместе.

Все элементы структуры хранятся в смежных ячейках памяти. Переменная типа структуры позволяет хранить более одного элемента данных различных типов под одним именем.

Что такое класс?

Класс — это план или набор инструкций для создания объекта определенного типа. Это базовая концепция объектно-ориентированного программирования, которая вращается вокруг реальных объектов. Класс в языке программирования определяет, как будет вести себя объект и что он будет содержать.

Класс также является определяемым пользователем типом данных, который может иметь различные типы данных и функции-члены внутри своего тела.

Синтаксис класса в C++

Вот синтаксис класса:

class class-name
{
// data
// functions
};

В приведенном выше синтаксисе имя класса — это имя, присвоенное классу. Данные являются членами класса, обычно объявляемыми как переменные. Функции здесь — это функции класса.

Синтаксис структуры в C++

Вот синтаксис структуры:

struct struct_name
{
// struct data members
}

В приведенном выше синтаксисе используется ключевое слово struct. struct_name — это имя структуры. Элементы структуры добавляются в фигурных скобках. Эти элементы, вероятно, относятся к разным типам данных.

Разница между структурой и классом

Вот основное различие между структурой и классом:

Структура Класс Структура — это определяемый пользователем тип данных, который объединяет логически связанные элементы данных разных типов, таких как char, float, int и т. д., вместе. Класс — это схема или набор инструкций для создания объекта определенного типа. Структура может быть объявлен с использованием ключевого слова struct. Его можно объявить с помощью ключевого слова class. Это тип данных типа значения. Это тип данных ссылочного типа. Вы не можете наследовать его от других структур или классов. Вы можете наследовать его от других структур или классов. .Он может создавать экземпляры объектов без использования нового ключевого слова. Он может создавать экземпляр объекта с помощью нового ключевого слова. Вы не можете изменить конструктор структуры по умолчанию. Вы можете изменить конструктор класса по умолчанию. Структура не может иметь деструктор. Класс может иметь деструктор. В структуре все типы значений размещаются в стеке. В классе все типы значений размещаются в куче. Используется в небольших программах. Используется в больших программах. Функции-члены не могут быть абстрактными или виртуальными. Функции-члены могут быть абстрактными или вирт ual. Экземпляры структуры называются «переменными структуры». Экземпляры класса называются объектами. Он не может иметь нулевых значений. Он может иметь нулевые значения. Переменные-члены структуры не могут быть инициированы напрямую. Переменные-члены класса могут быть инициированы напрямую. любой спецификатор доступа, то члены структуры являются общедоступными. Если вы не объявили какой-либо спецификатор доступа, то члены класса являются частными.

Какой выбрать?

Если у вас большой объем памяти или вы хотите использовать такую ​​концепцию, как наследование, вы можете выбрать класс. С другой стороны, эту структуру можно использовать, когда у вас есть небольшое поле памяти или объем памяти, необходимый для инициализации значений по умолчанию.

КЛЮЧЕВЫЕ ОТЛИЧИЯ


Язык C

  1. Классы и объекты С++
  2. Множественное, многоуровневое и иерархическое наследование C++
  3. Дружественные функции C++ и дружественные классы
  4. Операторы в C++ с примером:что такое, типы и программы
  5. Оператор C++ Switch Case с ПРИМЕРОМ
  6. C++ динамическое выделение массивов с примером
  7. Структура С++ с примером
  8. std::list в C++ с примером
  9. Учебное пособие по абстрактному классу C # с примером:что такое абстракция?
  10. Разница между while и do-while:объяснение с примерами