Kako Povleči Atribut

Kazalo:

Kako Povleči Atribut
Kako Povleči Atribut

Video: Kako Povleči Atribut

Video: Kako Povleči Atribut
Video: Джиган - На чиле (feat. Егор Крид, The Limba, blago white, OG Buda, Тимати, SODA LUV, Гуф) (Video) 2024, Maj
Anonim

Pri delu s predmeti in drugimi primerki razreda je dostop do atributov ena od običajnih operacij programerja. Dostop do določenih podatkov, shranjenih v predmetih, je lahko glede na uporabljene varnostne metode zanje težaven. Atribute, ki jih zaprejo zasebni in zaščiteni specifikatorji, je torej mogoče izvleči iz primerka razreda samo v metodi, ki pripada predmetu istega ali podrejenega (za zaščiteni) razred.

Kako povleči atribut
Kako povleči atribut

Navodila

Korak 1

Ustvarite objekt ali kazalec na primerek razreda, katerega atribut potrebujete v programu. Standardna konstrukcija za takšno operacijo je CMyClass myObj1. Včasih morate za inicializiranje predmeta nekatere parametre posredovati konstruktorju razreda. V tem primeru je zapis ustvarjanja predmeta lahko videti takole: CMyClass myObj1 (param1, param2, param3), kjer je CMyClass ime razreda, myObj1 je ime predmeta, ki ga ustvarjamo, in vsi parametri, ki jih zahteva konstruktor, so navedeni v oklepajih. Kazalec na primerek razreda se ustvari na naslednji način: CMyClass * pObj1 = nov CMyClass (param1, param2, param3).

2. korak

Atribut je najpreprosteje poklicati tako, da se nanj sklicujete neposredno kjer koli v programu. Vendar je to mogoče le za odprte podatke, opisane v razredu z javnim modifikatorjem. Neposreden dostop prek predmeta je videti takole: myObj1.attr1, kjer je attr1 atribut tega razreda. Za kazalec bi bil klic: pObj1–> attr1.

3. korak

Če ima atribut, na katerega se morate sklicevati, skrito stanje in je opisan v razredu z zasebnim modifikatorjem, je dostop do njega mogoč samo iz metode, ki pripada istemu razredu. Metoda ali funkcija razreda mora imeti javni status javnosti. V razred dodajte novo metodo, kjer napišite obdelavo zahtevanega atributa. V tem primeru lahko funkcijo posredujete parametre, odvisno od vrednosti, ki se izvede določena dejanja. Sama funkcija lahko vrne tudi podatke, na primer vsebino atributa. Programska koda C ++, ki izvaja obe funkciji za delo z zasebnim atributom: razred CMyClass {zaščiten: int attr1; // javni atribut: void funcA1 (int param) {attr1 = param; } int funcA2 () {return attr1; }};

4. korak

Tako, da nastavite zasebni atribut attr1 na vrednost, ki jo potrebujete, pokličite metodo istega razreda z uporabo predhodno ustvarjenega predmeta: myObj1.funcA1 (10) - s podobno implicitno operacijo se vrednost 10 postavi v atribut attr1. Pri delu s kazalcem na primerek razreda bo podobna operacija videti tako: рObj1–> funcA (10). Če želite pridobiti zasebni atribut attr1 in ugotoviti vrednost, shranjeno v njem, pokličite drugo metodo razreda: int Res = myObj1.funcA2 (). V tem primeru bo celoštevilčni spremenljivki Res dodeljena vrednost skrite spremenljivke razreda.

5. korak

Če morate pri vseh objektih podrejenih razredov poklicati atribut z zaščitenim statusom, se neposredno obrnite na njegovo spremenljivko. Vendar pa bo treba pri delu v funkcijah tujih razredov dostop do zaščitenih podatkov dobiti na zgoraj opisani način.

6. korak

Če želite poklicati atribut brez ustvarjanja predmeta, prijavite njegovo spremenljivko v razredu kot statično z naslednjo konstrukcijo: static int attr1. V tem primeru lahko atribut povlečete kjer koli v programski kodi, tako da določite vnos: CMyClass:: attr1.

Priporočena: