Thursday, 22 March 2012

Inner Class Example


#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

AWS Data Pipeline Services

https://www.youtube.com/watch?v=tykcCf-Zz1M