Class forward declaration : Class Basics « Class « C++

C++
1. Bitset
2. Class
3. Console
4. Data Structure
5. Data Type
6. Deque
7. Development
8. File
9. Function
10. Generic
11. Language
12. List
13. Map Multimap
14. Overload
15. Pointer
16. Queue Stack
17. Set Multiset
18. STL Algorithms Binary search
19. STL Algorithms Heap
20. STL Algorithms Helper
21. STL Algorithms Iterator
22. STL Algorithms Merge
23. STL Algorithms Min Max
24. STL Algorithms Modifying sequence operations
25. STL Algorithms Non modifying sequence operations
26. STL Algorithms Sorting
27. STL Basics
28. String
29. Valarray
30. Vector
Java
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++ Tutorial
PHP
Python
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
C++ » Class » Class BasicsScreenshots 
Class forward declaration
Class forward declaration


#include <iostream>
using namespace std;

class pr2;  // 

class pr1 {
  int printing;
  
public:
  pr1() { 
     printing = 0
  }
  void set_print(int status) { 
     printing = status; 
  }
  
  friend int inuse(pr1 object1, pr2 object2);
};

class pr2 {
  int printing;
  
public:
  pr2() { 
     printing = 0
  }
  void set_print(int status) { 
     printing = status; 
  }
  
  friend int inuse(pr1 object1, pr2 object2);
};

int inuse(pr1 object1, pr2 object2)
{
  if(object1.printing || object2.printingreturn 1;
  else return 0;
}

int main()
{
  pr1 p1;
  pr2 p2;

  if(!inuse(p1, p2)) 
     cout << "Printer idle\n";

  cout << "Setting p1 to printing...\n";
  p1.set_print(1);
  if(inuse(p1, p2)) 
     cout << "Now, printer in use.\n";

  cout << "Turn off p1...\n";
  p1.set_print(0);
  if(!inuse(p1, p2)) 
     cout << "Printer idle\n";

  cout << "Turn on p2...\n";
  p2.set_print(1);
  if(inuse(p1, p2)) 
     cout << "Now, printer in use.\n";

  return 0;
}


           
       
Related examples in the same category
1. Simplest class definitionSimplest class definition
2. A simple class with member variable, constructor, destructorA simple class with member variable, constructor, destructor
3. Address class: class definition and implementationAddress class: class definition and implementation
4. Declare class instanceDeclare class instance
5. Constructor: different parameter typeConstructor: different parameter type
6. Declare Class instance and use themDeclare Class instance and use them
7. Assign object1 to object2Assign object1 to object2
8. Init Object arrayInit Object array
w__w__w_._j__a__v_a__2___s___._c___o__m___ | Contact Us
Copyright 2003 - 08 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.