Answer on Question #55472, Programming / C++
SalesPerson.h
#include <string>
using namespace std;
// forward declaration for friend function
class Sale;
class SalesPerson {
public:
SalesPerson(int aSalesPersonId, string aLastName);
friend void display(Sale sale, SalesPerson salesPerson);
private:
int salesPersonId;
string lastName;
};SalesPerson.cpp
#include "SalesPerson.h"
SalesPerson::SalesPerson(int aSalesPersonId, string aLastName) {
salesPersonId = aSalesPersonId;
lastName = aLastName;
}Sale.h
// forward declaration for friend function
class SalesPerson;
class Sale {
public:
Sale(int aDayOfTheMonth, int aAmount, int aSalesPersonId);
friend void display(Sale sale, SalesPerson salesPerson);
private:
int dayOfTheMonth;
int amount;
int salesPersonId;
};Sale.cpp
#include "Sale.h"
Sale::Sale(int aDayOfTheMonth, int aAmount, int aSalesPersonId) {
dayOfTheMonth = aDayOfTheMonth;
amount = aAmount;
salesPersonId = aSalesPersonId;
}Main.cpp
#include "Sale.h"
#include "SalesPerson.h"
#include <iostream>
using namespace std;
// definition of friend function shared by two classes
void display(Sale sale, SalesPerson salesPerson) {
cout << sale.dayOfTheMonth << " " << sale.amount << " " << sale.salesPersonId
<< " " << salesPerson.lastName << endl;
}
int main() {
Sale sale(5, 100, 1);
SalesPerson salesPerson(1, "Cole");
display(sale, salesPerson);
system("pause");
}
Comments