char p;
cout << &p;
Run Code Online (Sandbox Code Playgroud)
这不会打印字符p的地址.它打印一些字符.为什么?
char p;
char *q;
q = &p;
cout << q;
Run Code Online (Sandbox Code Playgroud)
即使这样也没有.为什么?
class C2; //Forward Declaration
class C1
{
int status;
public:
void set_status(int state);
void get_status(C2 y);
};
class C2
{
int status;
public:
void set_status(int state);
friend void C1::get_status(C2 y);
};
//Function Definitions
void C1::set_status(int state)
{
status = state;
}
void C2::set_status(int state)
{
status = state;
}
void C1::get_status(C2 y) //Member function of C1
{
if (y.status | status)
cout<<" PRINT " <<endl;
}
Run Code Online (Sandbox Code Playgroud)
y.status 在倒数第二行显示错误:
C2 ::状态无法访问
代码执行正常,但下面有一个红线(错误)y.status.
为什么是这样?