包围 class 可以访问嵌套的 class 吗?
Can enclosing class access nested class?
我有以下代码:
#include <iostream>
#include <string>
class enclose
{
private:
int x;
public:
enclose(void) { x = 10; };
~enclose(void) { };
class nested1
{
public:
void printnumber(enclose p);
};
};
void enclose::nested1::printnumber(enclose p)
{
std::cout << "the number is " << p.x << std::endl;
}
int main()
{
enclose example;
example.printnumber();
}
我知道最后一行 example.printnumber();
不正确。但是,我想知道封闭的 class 是否可以访问嵌套的 class' 函数。 example
如何访问 printnumber()
函数?
Can enclosing class access nested class?
是,如果封闭 class 具有嵌套 class.
的 实例 (一个对象)
A class is a class is a class...嵌套并不重要,您必须始终拥有 class 的实例才能调用(非静态)成员函数。
我有以下代码:
#include <iostream>
#include <string>
class enclose
{
private:
int x;
public:
enclose(void) { x = 10; };
~enclose(void) { };
class nested1
{
public:
void printnumber(enclose p);
};
};
void enclose::nested1::printnumber(enclose p)
{
std::cout << "the number is " << p.x << std::endl;
}
int main()
{
enclose example;
example.printnumber();
}
我知道最后一行 example.printnumber();
不正确。但是,我想知道封闭的 class 是否可以访问嵌套的 class' 函数。 example
如何访问 printnumber()
函数?
Can enclosing class access nested class?
是,如果封闭 class 具有嵌套 class.
的 实例 (一个对象)A class is a class is a class...嵌套并不重要,您必须始终拥有 class 的实例才能调用(非静态)成员函数。