【发布时间】:2011-02-01 09:19:26
【问题描述】:
class Address {
int i ;
char b;
string c;
public:
void showMap ( void ) ;
};
void Address :: showMap ( void ) {
cout << "address of int :" << &i << endl ;
cout << "address of char :" << &b << endl ;
cout << "address of string :" << &c << endl ;
}
输出是:
address of int : something
address of char : // nothing, blank area, that is nothing displayed
address of string : something
为什么?
另外一件有趣的事:如果 int, char, string 是公开的,那么输出是
... int : something
... char :
... string : something_2
something_2 - something 总是等于 8。为什么? (不是 9 个)
【问题讨论】:
标签: c++ cout memory-address