ちょっとした情報
Parent Class: Vehicle
Child Class: Car & Motorcycle
私はあるstruct
ものを手に入れました
struct Point
{
int x,y;
};
そして、私は&で次のことを行うsetPoint
関数を取得しましたCar
Motorcycle
Car
4輪を手に入れてからMotorcycle
2輪を手に入れました。
Car
この機能があります
class Car : public Vehicle
{
private:
Point wheelPoint[4]; // if motorcycle then its wheelPoint[2]
public:
Point getPoint();
void setPoint();
}
void Car::setPoint()
{
int xData,yData;
for (int i=0;i<4;i++)
{
cout << "Please enter X :" ;
cin >> xData;
cout << "Please enter Y :" ;
cin >> yData;
}//end for loop
}//end setPoint
だから私getPoint
も機能を得ました..
Point Car::getPoint()
{
return wheelPoint;
}
問題は私の main.cpp にあります、私は次のことをしました
int main()
{
VehicleTwoD *vehicletwod[100];
//assuming just car but there motorcycle too
Car *mCar = new Car();
Point myPoint;
vechicletwod[0] = mCar;
//here i did the setpoint, set other variable
//then when i try retrieve
myPoint = Car->getPoint();
//no error till here.
cout << sizeof(myPoint);
}
オートバイでも車でも、結果は常に 4 のままです。オートバイで 2、車で 4 ということはありません。何が悪いのかわからない
オートバイの設定値も設定したと仮定します。両方とも同じ結果を返します。メイン クラスにポイント myPoint が含まれていますが、wheelPoint[配列] を含めるのは不適切です