const used with functions :
class Dog {
int age;
string name;
public:
Dog() { age = 3; name = "dummy"; }
// const parameters and these are overloaded functions
void setAge(const int& a) { age = a; }
void setAge(int& a) { age = a; }
// Const return value
const string& getName() {return name;}
// const function and these are overloaded functions
void printDogName() const { cout << name << "const" << endl; } // value of name can't be modified
void printDogName() { cout << getName() << " non-const" << endl; }
};
int main() {
Dog d;
d.printDogName();
const Dog d2;
d2.printDogName();
}
class Dog {
int age;
string name;
public:
Dog() { age = 3; name = "dummy"; }
// const parameters and these are overloaded functions
void setAge(const int& a) { age = a; }
void setAge(int& a) { age = a; }
// Const return value
const string& getName() {return name;}
// const function and these are overloaded functions
void printDogName() const { cout << name << "const" << endl; } // value of name can't be modified
void printDogName() { cout << getName() << " non-const" << endl; }
};
int main() {
Dog d;
d.printDogName();
const Dog d2;
d2.printDogName();
}
Comments
Post a Comment