fork download
  1. #include <iostream>
  2. class A;
  3.  
  4. class B
  5. {
  6. private:
  7. public:
  8. void bfun (A* Aref);
  9. };
  10.  
  11. class A{
  12. private:
  13. int x;
  14. B b_obj;
  15. public:
  16. void afun();
  17. friend void B::bfun(A*);
  18. };
  19.  
  20. void B::bfun(A* Aref)
  21. {
  22. Aref->x = 1;
  23. std::cout<< Aref->x << '\n' ;
  24. }
  25.  
  26. void A::afun()
  27. {
  28. x=0;
  29. b_obj.bfun(this);
  30. }
  31.  
  32. int main()
  33. {
  34. A aobj;
  35. aobj.afun();
  36. return 0;
  37. }
  38.  
Success #stdin #stdout 0s 4380KB
stdin
Standard input is empty
stdout
1