Course Content
C++ OOP
C++ OOP
Constructor and Attributes
One of the primary usage of the constructors is to initialize attributes of the class. A default constructor, for example, can be used to set initial values. For example:
main
#include <iostream> class Person { public: Person() { name = "undefined"; } std::string name; }; int main() { Person person; std::cout << person.name; }
If you don't specify value for name attribute of the object, it will be set to underfined as a default. You can try removing this constructor to see what changes occur.
Initializing Attributes with Constructor
Just as functions a constructor can accept parameters, allowing you to pass different arguments when instantiating an object. Also, constructor can be overrided, so you can increase flexibility, for instance varying number of arguments.
main
class Person { public: Person(std::string _name, std::string _surname, int _age) { name = _name; surname = _surname; age = _age; } std::string name; std::string surname; int age; }; int main() { Person person("Bob", "Song", 23); }
Swipe to show code editor
- Create a constructor for the Location class that takes three parameters and initializes the instance variables with these values.
- Output initialized attributes of the object to the console.
Thanks for your feedback!
Constructor and Attributes
One of the primary usage of the constructors is to initialize attributes of the class. A default constructor, for example, can be used to set initial values. For example:
main
#include <iostream> class Person { public: Person() { name = "undefined"; } std::string name; }; int main() { Person person; std::cout << person.name; }
If you don't specify value for name attribute of the object, it will be set to underfined as a default. You can try removing this constructor to see what changes occur.
Initializing Attributes with Constructor
Just as functions a constructor can accept parameters, allowing you to pass different arguments when instantiating an object. Also, constructor can be overrided, so you can increase flexibility, for instance varying number of arguments.
main
class Person { public: Person(std::string _name, std::string _surname, int _age) { name = _name; surname = _surname; age = _age; } std::string name; std::string surname; int age; }; int main() { Person person("Bob", "Song", 23); }
Swipe to show code editor
- Create a constructor for the Location class that takes three parameters and initializes the instance variables with these values.
- Output initialized attributes of the object to the console.
Thanks for your feedback!