#include<iostream.h>
#include<stdio.h>
class OutSide;
namespace N{
class Outer
{
public:
Outer(){
}
public:
class Inner{
friend class ::OutSide;
private:
int x;
};
private:
Inner inner;
public:
static Outer& instance()
{
static Outer *obj=new Outer();
obj->a=10;
return *obj;
}
friend class ::OutSide;
private:
int a;
};
}
class OutSide
{
public:
OutSide(){}
void fun()
{
N::Outer obj;
std::cout<<N::Outer::instance().inner.x<<std::endl;
std::cout<<N::Outer::instance().a<<std::endl;
}
};
int main()
{
OutSide obj;
obj.fun();
}
No comments:
Post a Comment