Konstruktor och Attribut
En av de främsta användningsområdena för konstruktorer är att initiera attribut i klassen. En standardkonstruktor kan till exempel användas för att sätta initialvärden. Till exempel:
main.cpp
#include <iostream> class Person { public: Person() { name = "undefined"; } std::string name; }; int main() { Person person; std::cout << person.name; }
Om du inte anger något värde för name-attributet hos objektet, kommer det att sättas till underfined som standard. Du kan prova att ta bort denna konstruktor för att se vilka förändringar som sker.
Initiera attribut med konstruktor
Precis som funktioner kan konstruktorer ta parametrar, vilket möjliggör olika argument vid skapandet av objekt. Du kan även överlagra dem för att hantera varierande antal argument.
main.cpp
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); }
Uppgift
Swipe to start coding
Du arbetar med en Location
-klass och behöver initiera dess attribut med hjälp av en konstruktor.
- Skapa en konstruktor som tar tre parametrar och tilldelar dem till instansvariablerna.
- Skapa ett objekt av klassen
Location
med hjälp av konstruktorn. - Skriv ut objektets initierade attribut till konsolen.
Lösning
solution.cpp
Var allt tydligt?
Tack för dina kommentarer!