Добавление класса Calculator — КиберПедия 

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

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Добавление класса Calculator

2019-10-25 53
Добавление класса Calculator 0.00 из 5.00 0 оценок
Заказать работу

  1. В меню Проект выберите команду Добавить класс. В поле ввода Имя класса введите Calculator. Нажмите кнопку ОК. В проект будут добавлены два новых файла. Чтобы сохранить сразу все измененные файлы, нажмите клавиши CTRL+SHIFT+S. Это сочетание клавиш для команды Файл > Сохранить все. Кроме того, есть кнопка Сохранить все на панели инструментов. Она имеет вид значка с двумя дискетами рядом с кнопкой Сохранить. В общем случае рекомендуется регулярно нажимать кнопку Сохранить все, чтобы не пропустить никакие файлы при сохранении.

Класс подобен схеме для объекта, который выполняет какие-либо действия. В этом случае мы определяем калькулятор и особенности его работы. Использованный ранее мастер Добавить класс создал файлы H и CPP, имя которых совпадает с именем класса. Вы можете просмотреть полный список файлов проекта в окне обозревателя решений, отображаемом в боковой части окна IDE. Если окно не отображается, его можно открыть из строки меню, выбрав Вид > Обозреватель решений.

Теперь у вас в редакторе должно быть открыто три вкладки: CalculatorTutorial.cpp, Calculator.h и Calculator.cpp. Если вы случайно закроете одну из них, то можете повторно открыть эту вкладку, дважды щелкнув ее в окне обозревателя решений.

  1. На вкладке Calculator.h удалите созданные строки Calculator(); и ~Calculator();, так как здесь они вам не понадобятся. Затем добавьте следующую строку кода, чтобы файл выглядел следующим образом:

C++

· #pragma once

class Calculator

{

public:

double Calculate(double x, char oper, double y);

};

Пояснения к коду

· Добавленная строка объявляет новую функцию Calculate, которую мы используем для выполнения математических операций, таких как сложение, вычитание, умножение и деление.

· Код C++ упорядочен по файлам заголовка (H) и исходным файлам (CPP). Различные компиляторы поддерживают несколько других расширений имени файла, но это основные, о которых вам нужно знать. Функции и переменные обычно объявляются, то есть получают имя и тип, в файлах заголовка, и реализуются, то есть получают определение, в исходных файлах. Чтобы обратиться к коду, определенному в другом файле, вы можете использовать #include "filename.h", где "filename.h" — это имя файла, объявляющего переменные или функции, которые требуется использовать.

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

· Рекомендуется упорядочивать код по различным файлам в зависимости от его назначения, чтобы позднее было проще найти нужный код. В данном случае мы определяем класс Calculator отдельно от файла, содержащего функцию main(), но планируем ссылаться на класс Calculator в main().

· Под Calculate появится зеленая волнистая линия. Это вызвано тем, что мы еще не определили функцию Calculate в CPP-файле. Наведите указатель на это слово, щелкните по появившейся лампочке (в данном случае отвертке) и выберите Создать определение "Calculate" в Calculator.cpp.

Отображается всплывающее окно, сообщающее об изменении кода, внесенном в другом файле. Код был добавлен в Calculator.cpp.

Сейчас он возвращает просто 0.0. Давайте изменим это. Нажмите клавишу ESC, чтобы закрыть всплывающее окно.

· Переключитесь на файл Calculator.cpp в окне редактора. Удалите разделы Calculator() и ~Calculator() (как сделали в H-файле) и добавьте в Calculate() следующий код:

C++

4. #include "Calculator.h"

5.

6. double Calculator::Calculate(double x, char oper, double y)

7. {

8.     switch(oper)

9.     {

10.   case '+':

11.       return x + y;

12.   case '-':

13.       return x - y;

14.   case '*':

15.       return x * y;

16.   case '/':

17.       return x / y;

18.   default:

19.       return 0.0;

20. }

21.}

  1. Пояснения к коду
  2. Функция Calculate использует число, оператор и второе число, а затем выполняет запрошенную операцию над этими числами.
  3. Оператор switch проверяет, какой оператор был предоставлен, и выполняет только вариант (case), соответствующий этой операции. Вариант default: является резервным на тот случай, если пользователь вводит неприемлемый оператор, чтобы программа не прервала работу. В общем случае лучше обрабатывать некорректный ввод данных пользователем более элегантным способом, но это выходит за рамки данного руководства.
  4. Ключевое слово double обозначает тип числа, который поддерживает десятичные числа. Таким образом, калькулятор может выполнять математические операции с десятичными и целыми числами. Функция Calculate должна всегда возвращать такое число из-за элемента double в самом начале кода (обозначает тип возвращаемого значения функции), поэтому возвращается 0.0 даже в случае default.
  5. H-файл объявляет функцию prototype, которая заранее сообщает компилятору, какой параметр требуется и какой тип возвращаемого значения следует ожидать. CPP-файл содержит все сведения о реализации этой функции.

Если построить и запустить код еще раз на этом этапе, он по-прежнему завершит работу после запроса операции для выполнения. Далее вам нужно изменить функцию main для выполнения вычислений.


Поделиться с друзьями:

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.01 с.