/*************************************************/
// R. A. Hillyard
// stuRecord01.cpp
// November 2001
//
// class example with public member functions
// and private data member variables
/*************************************************/
#include<iostream>
#include<string>
using namespace std;
class StuRecord
{
public: //public members define the behavior of the object
//functions to modify data members
void input(); //input a stuRecord from input stream
void set(int id, string fname, string lname); //set all values for stuRecord
//functions to access data members
void output(); //output a stuRecord
int getIdNum(); //returns id number
string getFirst(); //returns first name
string getLast(); //returns last name
private: //private members define the state of the object
int idNum; //student id number
string first; //student last name
string last; //student first name
};
/*************************************************/
int main()
{
//Declare 3 objects - give then identity
StuRecord stu1, stu2, stu3;
//example of calling mutator function - note different methods
//mutator functions change the value of the calling object
stu1.input();
stu2.input();
stu3.set(9999, "Analog", "Device");
//call member functions to output values
stu1.output();
stu2.output();
stu3.output();
//example of calling accessor function
//accessor functions do not change the value of the calling object
if(stu3.getLast() == "Device")
{ cout << "First name is: " << stu3.getFirst() << endl; }
return 0;
}//end main
/*************************************************/
/*************************************************/
// get data from user and set objects member variables
// modifier function - sets state of object
/*************************************************/
void StuRecord::input()
{
cout << "enter Id Number, first name and last name: ";
cin >> idNum >> first >> last;
}
/*************************************************/
// print name data to screen
/*************************************************/
void StuRecord::output()
{ cout << idNum << " " + first + " " + last << endl; }
/*************************************************/
// set member variables to values in arguments
// modifier function - sets state of object
/*************************************************/
void StuRecord::set(int id, string fname, string lname)
{
idNum = id;
first = fname;
last = lname;
}
/*************************************************/
// accessor function for idNum member variable
/*************************************************/
int StuRecord::getIdNum()
{ return idNum; }
/*************************************************/
// accessor function for first member variable
/*************************************************/
string StuRecord::getFirst()
{ return first; }
/*************************************************/
// accessor function for last member variable
/*************************************************/
string StuRecord::getLast()
{ return last; }
/*************************************************/
/*****************Program Output*****************
enter Id Number, first name and last name: 5546 Using Classes
enter Id Number, first name and last name: 8765 Is Fun
5546 Using Classes
8765 Is Fun
9999 Analog Device
First name is: Analog
*/