- #1
kstewa17
- 1
- 0
Write a copy assignment operator for CarCounter that assigns objToCopy.carCount to the new objects's carCount, then returns *this. Sample output for the given program:
Cars counted: 12
Cars counted: 12
Code:
#include <iostream>
using namespace std;
class CarCounter {
public:
CarCounter();
CarCounter& operator=(const CarCounter& objToCopy);
void SetCarCount(const int setVal) {
carCount = setVal;
}
int GetCarCount() const {
return carCount;
}
private:
int carCount;
};
CarCounter::CarCounter() {
carCount = 0;
return;
}
[COLOR="#00FFFF"]// FIXME write copy assignment operator
/* Your solution goes here */[/COLOR]
[B][COLOR="#FF0000"]CarCounter& CarCounter::operator=(const CarCounter& objToCopy) {
if (this != &objToCopy) {
delete setVal;
setVal = new int;
*setVal = *(objToCopy.dataObj);
}
return *this;[/COLOR][/B]
int main() {
CarCounter frontParkingLot;
CarCounter backParkingLot;
frontParkingLot.SetCarCount(12);
backParkingLot = frontParkingLot;
cout << "Cars counted: " << backParkingLot.GetCarCount();
return 0;
}