Using a reference parameter for class type : Pointer Primitive « Pointer « C++






Using a reference parameter for class type

Using a reference parameter for class type
 
#include <iostream>
#include <cstring>
#include <cstdlib>
using namespace std;

class StringClass {
  char *p;
public:
  StringClass(char *s);
  ~StringClass() { 
     delete [] p; 
  }
  char *get() { 
     return p; 
  }
};

StringClass::StringClass(char *s)
{
  int l;

  l = strlen(s)+1;

  p = new char [l];
  if(!p) {
    cout << "Allocation error\n";
    exit(1);
  }

  strcpy(p, s);
}

// Using a reference parameter.
void show(StringClass &x)
{
  char *s;
   
  s = x.get();
  cout << s << endl;
}

int main()
{
  StringClass stringObject1("Hello"), stringObject2("There");

  show(stringObject1);
  show(stringObject2);

  return 0;
}


           
         
  








Related examples in the same category

1.Decrementing a Pointer for int valueDecrementing a Pointer for int value
2.Assign the public object member address to a pointerAssign the public object member address to a pointer
3.Pointers to Class MembersPointers to Class Members
4.Pointer as a VariablePointer as a Variable
5.Declares a pointer and then outputs its value without first assigning
6.Null PointersNull Pointers
7.How to use the address operator to assign the address of a variable to a pointer
8.Indirection Operator and DereferencingIndirection Operator and Dereferencing
9.The actual data type of the value of all pointers is the sameThe actual data type of the value of all pointers is the same
10.Prints the values and addresses of variables.Prints the values and addresses of variables.
11.Returning a pointer