C ++ getArea () и cout не работают

0

Это мой код, я относительно новичок в C++. Единственная программа C++, которую я когда-либо писала, была приложением atm. Для этого проекта я пытаюсь найти область коробки, любые предложения, почему это не работает?

В любом случае, мой код

/*
 * c.cpp
 *
 *  Created on: Jan 31, 2014
 *      Author: University of Denver. Yeah, I smoke weed.
 */

class Box
{
   public:
      // pure virtual function
      virtual double getVolume() = 0;
   private:
      double length;      // Length of a box
      double breadth;     // Breadth of a box
      double height;      // Height of a box
};

#include <iostream>

using namespace std;

// Base class
class Shape 
{
public:
   // pure virtual function providing interface framework.
   virtual int getArea() = 0;
   void setWidth(int w)
   {
      width = w;
   }
   void setHeight(int h)
   {
      height = h;
   }
protected:
   int width;
   int height;
};

// Derived classes
class Rectangle: public Shape
{
public:
   int getArea()
   { 
      return (width * height); 
   }
};
class Triangle: public Shape
{
public:
   int getArea()
   { 
      return (width * height)/2; 
   }
};

int main(void)
{
   Rectangle Rect;
   Triangle  Tri;

   Rect.setWidth(5);
   Rect.setHeight(7);
   // Print the area of the object.
   cout << "Total Rectangle area: " << Rect.getArea() << endl;

   Tri.setWidth(5);
   Tri.setHeight(7);
   // Print the area of the object.
   cout << "Total Triangle area: " << Tri.getArea() << endl; 

   return 0;
}
  • 1
    Какие ошибки вы получаете при запуске?
  • 0
    Вам нужно будет рассказать нам, что не работает, где в коде это не работает и что вы ожидаете увидеть.
Показать ещё 6 комментариев
Теги:

1 ответ

0

Код корректно скомпилирован и выводит значения 35 и 17. Я думаю, проблема в том, что ваше консольное окно быстро закрывается системой, и вы не видите результат. Вы можете вставить любую команду, которая будет ждать, пока вы не введете что-либо, например

int i;

std::cin >> i;

или что-то подобное перед возвратом

Если вы используете MS VC++, вы можете запускать консольные приложения с комбинацией клавиш Ctrl + F5

Также учтите, что ваш класс Box не используется и может быть удален.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню