Это мой код, я относительно новичок в 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;
}
Код корректно скомпилирован и выводит значения 35 и 17. Я думаю, проблема в том, что ваше консольное окно быстро закрывается системой, и вы не видите результат. Вы можете вставить любую команду, которая будет ждать, пока вы не введете что-либо, например
int i;
std::cin >> i;
или что-то подобное перед возвратом
Если вы используете MS VC++, вы можете запускать консольные приложения с комбинацией клавиш Ctrl + F5
Также учтите, что ваш класс Box не используется и может быть удален.