Konstruktør og Attributter
En av hovedbruksområdene for konstruktører er å initialisere attributter til klassen. En standardkonstruktør kan for eksempel brukes til å sette startverdier. For eksempel:
main.cpp
#include <iostream> class Person { public: Person() { name = "undefined"; } std::string name; }; int main() { Person person; std::cout << person.name; }
Hvis du ikke angir verdi for name-attributtet til objektet, vil det bli satt til underfined som standard. Du kan prøve å fjerne denne konstruktøren for å se hvilke endringer som oppstår.
Initialisering av attributter med konstruktør
Akkurat som funksjoner kan konstruktører ta parametere, noe som gjør det mulig å bruke ulike argumenter ved opprettelse av objekter. Du kan også overbelaste dem for å håndtere varierende antall argumenter.
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); }
Oppgave
Swipe to start coding
Du arbeider med en Location
-klasse og må initialisere dens attributter ved hjelp av en konstruktør.
- Opprett en konstruktør som tar tre parametere og tilordner dem til instansvariablene.
- Opprett et objekt av
Location
-klassen ved å bruke konstruktøren. - Skriv ut de initialiserte attributtene til objektet i konsollen.
Løsning
solution.cpp
Alt var klart?
Takk for tilbakemeldingene dine!