Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

#pragma once #include<iostream> #include<string> using namespace std; class Addr

ID: 3727432 • Letter: #

Question

#pragma once #include<iostream> #include<string> using namespace std;
class Address { private: string street_name; int street_number; string city; string zip_code; public: Address() { street_name = ""; street_number = 0; city = ""; zip_code = ""; } Address(string sn, string c, string zp,int snum) { street_name = sn; city = c; zip_code = zp; street_number = snum; }
void setstreetname(string sn) { street_name = sn; } void setcity(string c) { city = c; } void setzipcode(string zp) { zip_code = zp; } void setstreetnumber(int num) { street_number = num; } string getzipcode() { return zip_code; } string getstreetname(){ return street_name; } string getcity() { return city; } int getstreetnumber() { return street_number; } void print() { cout << "Address: " << street_number << "" << street_name << "," << city<<endl; cout << "Zip code:" << zip_code << endl; } bool operator==(Address &other) { if (other.getstreetname()==getstreetname()&&other.street_number = street_number) { if (other.city == city&&other.zip_code == zip_code) { return true; } return false; } return false; }

}; Have error :expression must be modifiable lvalue at if (other.getstreetname()==getstreetname()&&other.street_number = street_number) #pragma once #include<iostream> #include<string> using namespace std;
class Address { private: string street_name; int street_number; string city; string zip_code; public: Address() { street_name = ""; street_number = 0; city = ""; zip_code = ""; } Address(string sn, string c, string zp,int snum) { street_name = sn; city = c; zip_code = zp; street_number = snum; }
void setstreetname(string sn) { street_name = sn; } void setcity(string c) { city = c; } void setzipcode(string zp) { zip_code = zp; } void setstreetnumber(int num) { street_number = num; } string getzipcode() { return zip_code; } string getstreetname(){ return street_name; } string getcity() { return city; } int getstreetnumber() { return street_number; } void print() { cout << "Address: " << street_number << "" << street_name << "," << city<<endl; cout << "Zip code:" << zip_code << endl; } bool operator==(Address &other) { if (other.getstreetname()==getstreetname()&&other.street_number = street_number) { if (other.city == city&&other.zip_code == zip_code) { return true; } return false; } return false; }

}; Have error :expression must be modifiable lvalue at if (other.getstreetname()==getstreetname()&&other.street_number = street_number) #pragma once #include<iostream> #include<string> using namespace std;
class Address { private: string street_name; int street_number; string city; string zip_code; public: Address() { street_name = ""; street_number = 0; city = ""; zip_code = ""; } Address(string sn, string c, string zp,int snum) { street_name = sn; city = c; zip_code = zp; street_number = snum; }
void setstreetname(string sn) { street_name = sn; } void setcity(string c) { city = c; } void setzipcode(string zp) { zip_code = zp; } void setstreetnumber(int num) { street_number = num; } string getzipcode() { return zip_code; } string getstreetname(){ return street_name; } string getcity() { return city; } int getstreetnumber() { return street_number; } void print() { cout << "Address: " << street_number << "" << street_name << "," << city<<endl; cout << "Zip code:" << zip_code << endl; } bool operator==(Address &other) { if (other.getstreetname()==getstreetname()&&other.street_number = street_number) { if (other.city == city&&other.zip_code == zip_code) { return true; } return false; } return false; }

}; Have error :expression must be modifiable lvalue at if (other.getstreetname()==getstreetname()&&other.street_number = street_number)

Explanation / Answer

You have to use "==" to compare two numbers instead of "="

//-----------------------------------------------------------------------------------------------------------------------------------------------

#pragma once
#include<iostream>
#include<string>
using namespace std;

class Address {
private:
   string street_name;
   int street_number;
   string city;
   string zip_code;
public:
   Address() {
       street_name = "";
       street_number = 0;
       city = "";
       zip_code = "";
   }
   Address(string sn, string c, string zp, int snum) {
       street_name = sn;
       city = c;
       zip_code = zp;
       street_number = snum;
   }

   void setstreetname(string sn) {
       street_name = sn;
   }
   void setcity(string c) {
       city = c;
   }
   void setzipcode(string zp) {
       zip_code = zp;
   }
   void setstreetnumber(int num) {
       street_number = num;
   }
   string getzipcode() {
       return zip_code;
   }
   string getstreetname() {
       return street_name;
   }
   string getcity() {
       return city;
   }
   int getstreetnumber() {
       return street_number;
   }
   void print() {
       cout << "Address: " << street_number << "" << street_name << "," << city << endl;
       cout << "Zip code:" << zip_code << endl;
   }
   bool operator==(Address &other) {
       if (other.getstreetname() == getstreetname() && other.street_number == street_number) {
           if (other.city == city&&other.zip_code == zip_code) {
               return true;
           }
           return false;
       }
       return false;
   }
};