Which of the following is the correct way to overload the operator to use School class type and a function getTotalStudents()? void operator>-(const School &lhs, const School &rhs) { if(1hs.getTotalStudents() > rhs.getTotalStudents()) { cout << "Is Greater!"; } > void operator>-(School &lhs, School &rs) ( if(this->getTotalStudents() > getTotalStudents()) { cout << "Is Greater!"; } } bool operator>-(School &lhs, School &rs) ( return this->getTotalStudents() >1hs.getTotalStudents(); > bool operator>=(const School &lhs, const School &rhs) ( return 1hs.getTotalStudents() > rhs.getTotalStudents(); }
how to do?


#include <iostream>
using namespace std;
class School {
private:
string name;
int totalStudents;
public:
School(const string& name, int totalStudents) : name(name), totalStudents(totalStudents) {}
string getName() const { return name; }
int getTotalStudents() const { return totalStudents; }
};
bool operator>=(const School &lhs, const School &rhs){
return lhs.getTotalStudents() >= rhs.getTotalStudents();
}
int main() {
School s1("School A", 100);
School s2("School B", 200);
if (s1 >= s2) {
cout << s1.getName() << " has more students than " << s2.getName() << endl;
} else {
cout << s2.getName() << " has more students than " << s1.getName() << endl;
}
return 0;
}
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 2 images









