SOURCE FILE: getString.cpp


#include <fstream>
#include <iostream>
#include <string>
#include <assert.h>

using namespace std;

/* ************************************************************ */
/*                         MAIN PROGRAM                         */
/* ************************************************************ */
int main ()
{
       /* PROTOTYPES */
      // CORRECT METHOD
  void getStringByRef (string & refStr) ;

      // NOT-CORRECT METHOD
  void getStringByVal (string   valStr) ;

       /* VARIABLES */  
  string rStr = "INITIAL_REF", 
         vStr = "INITIAL_VAL";

  getStringByRef (rStr) ; // CORRECT METHOD
  cout << "in main, rStr is: " << rStr << endl << endl ;

  getStringByVal (vStr) ; // NOT-CORRECT METHOD
  cout << "in main, vStr is: " << vStr << endl << endl ;

  return 0 ;
}

/* ************************************************************ */
/*                         getStringByRef                       */
/* ************************************************************ */
/* CORRECT METHOD */
void getStringByRef (string & refStr) 
{
  cout << "Please type a string for 'refStr': " ;
  cin >> refStr ;
  cout << endl << "in getStringByRef, refStr is: " 
       << refStr << endl;
}

/* ************************************************************ */
/*                         getStringByVal                       */
/* ************************************************************ */
   /* NOT-CORRECT METHOD */
void getStringByVal (string   valStr) 
{
  cout << "Please type a string for 'valStr': " ;
  cin >> valStr ;
  cout << endl << "in getStringByVal, valStr is: " 
       << valStr << endl;
}
/* ************************************************************ */
/* ************************************************************ */
/* ************************************************************ */