下面是一个示例代码。我想要得到以Volume()为单位的int K的地址和长度。我怎么能那样做?
#include <iostream>
using namespace std;
class Box {
public:
Box(double l = 2.0) {
length = l;
}
double Volume() {
cout<<"Done"<<endl;
int k=300;
}
public:
double length;
};
int main() {
Box Box1(5);
Box *ptrBox;
ptrBox = &Box1;
cout << "Volume of Box1: " << ptrBox->Volume() << endl;
return 0;
}
如何获得类中变量的地址,以及该类中方法中变量的地址?
获取任何变量的地址:
int i;
int * ptr = &i;
你已经做过了。嗯,你还可以做:
double * dPtr = &Box1.volume;
没什么不同。然而,这是一个非常糟糕的主意。您也成功地获得了方法中一个变量的地址,但是要知道局部变量将会消失,在方法结束后使用它是一个非常非常糟糕的主意。