Сравнение классов и структур в C++

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

Класс — это вид структуры, спецификация доступа которой по стандарту — private, то есть:
class s { ...};

Существует также сокращённый вариант записи:
struct s {private: ...};

Несмотря на корректность данного определения класса, всё же стандартным в языке С++ считается понятие класса. Также, как правило, говорят, что структуры struct являются классами, у которых все члены определяются как общие, то есть:
struct s {...};

Упрощённая запись имеет вид:
class s {public: ...};

Применение.

Тогда, когда нет необходимости скрывать некоторые данные, используются структуры.

Пример.

Как пример можно привести представление для комплексных чисел типа данных, пользуясь структурами и классами. Однозначное отличие здесь — применение ключевых слов private и public.

Пример со структурой:
struct complex
{
  void assign(double r, double i);
  void print() { cout << real << « + » << imag << «i»; }
private:
  double real;
  double imag;
};
void complex::assign(double r, double i = 0.0)
{
  real = r;
  imag = i;
}

Пример с классом:
class complex
{
  double real;
  double imag;
public:
  void assign(double r, double i);
  void print() { cout << real << « + » << imag << «i»; }
};
void complex::assign(double r, double i = 0.0)
{
  real = r;
  imag = i;
}

Заключение.
Сравнение классов и структур в C++

В большинстве случаев структуры содержат в себя поля, но не содержать методов.
При планировании объектов, в которых будут выполнять данные методы их использования, то более рационально применять классы.
Ключевые теги:
Понравилась новость? Добавь в закладки!
Хочешь получать свежие новости? Подпишись на обновления с сайта!
Рекомендуем посмотреть:

Добавление комментария

Ваше Имя:
Ваш E-Mail:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Вставка исходного кода Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера

Код:
Включите эту картинку для отображения кода безопасности
обновить, если не виден код
Введите код: