Constructors, destructors, and passing objects : object parameters « Function « C++ Tutorial






#include <iostream> 
using namespace std; 
 
class MyClass { 
  int val; 
public: 
  MyClass(int i) { 
    val = i; 
    cout << "Inside constructor\n"; 
  } 
 
  ~MyClass() { cout << "Destructing\n"; } 
  int getI() { return val; } 
}; 
 
void display(MyClass ob) 
{ 
  cout << ob.getI() << '\n'; 
} 
 
int main() 
{ 
  MyClass a(10); 
 
  cout << "Before calling display().\n"; 
  display(a); 
  cout << "After display() returns.\n"; 
 
  return 0; 
}
Inside constructor
Before calling display().
10
Destructing
After display() returns.
Destructing








7.5.object parameters
7.5.1.Pass an object to a function
7.5.2.Constructors, destructors, and passing objects
7.5.3.Copy constructor invoked when passing an object to a function
7.5.4.Passing pointers to objects
7.5.5.Data slicing with passing by value
7.5.6.Passing Objects to Functions