私は、クラスを実装しています(あるいは、クラスを継承しています)。これはIntegerを保持しています。今私は、のgetValue関数は何もしません2番目のIntObject.getValue()の戻り値が正しくありません
Inte foo = Inte(5);
cout << foo.getValue() << endl; // 5
foo.setValue(10);
cout << foo.getValue() << endl; // 10
cout << foo.getValue() << endl; // 4199696
:私は一度だけ値へのポインタを返すことができ、問題を抱えているポインタを返す以外にも、私はそれが後に4199696を返す理由はわかりません最初のgetValue()。ここで
私のクラス:この機能で
class Object {
public:
virtual int getValue() = 0;
virtual void setValue(int *pointer) = 0;
virtual string toString() = 0;
};
class Inte : public Object {
private:
int* value;
public:
Inte (int *val){
value = val;
}
Inte (int val){
int a = val;
value = &val;
}
virtual int getValue(){
return *value;
};
virtual void setValue(int *pointer){
value = pointer;
};
virtual void setValue(int val){
int a = val;
value = &val;
};
virtual string toString(){
stringstream ss;
string s;
ss << value;
ss >> s;
return s;
};
};
'toString()'は何も返しません。 – hmjd
今、ありがとうございます:) – pharno