Mitä järkeä on käyttää osoittimia C++:ssa?
Mitä järkeä on käyttää osoittimia C++:ssa?

Video: Mitä järkeä on käyttää osoittimia C++:ssa?

Video: Mitä järkeä on käyttää osoittimia C++:ssa?
Video: On C programming, switch-cases and the GOSUB 2024, Saattaa
Anonim

Yksi syy siihen käytä osoittimia on niin, että muuttujaa tai objektia voidaan muokata kutsutussa funktiossa. Sisään C++ se on parempi käytäntö käyttää viittauksia kuin osoittimia . Vaikka viittaukset ovat pohjimmiltaan osoittimia , C++ jossain määrin piilottaa tosiasian ja saa sen näyttämään siltä kuin olisit ohittanut arvoa.

Vastaavasti saatat kysyä, miksi osoittimien käyttöä C++:ssa ei suositella?

Fiksu osoittimia tyypillisesti pitää kirjaa objekteista, joihin ne osoittavat muistinhallintaa varten. Väärinkäyttö osoittimia on suuri bugien lähde: jatkuva allokointi, purkaminen ja viittaus, jotka on suoritettava käyttämällä ohjelmaa, joka on kirjoitettu käyttämällä osoittimia aiheuttaa muistivuotojen riskin.

Edellisen lisäksi, milloin minun pitäisi käyttää osoittimia C++? Milloin käyttää Mitä Käytä osoittimia : Käytä osoittimia jos osoitin aritmeettinen tai ohitus NULL- osoitin tarvitaan. Esimerkiksi taulukoille (Huomaa, että taulukkoon pääsy on toteutettu osoittimen avulla aritmeettinen).

Kun tämä otetaan huomioon, mitä etuja osoittimien käytöstä on?

Suuri etuja / osoittimia ovat: (i) Se mahdollistaa dynaamisesti muistin varattujen rakenteiden hallinnan. (ii) Se mahdollistaa taulukoiden ja merkkijonojen välittämisen funktioille tehokkaammin. (iii) Se mahdollistaa rakenteen osoitteen välittämisen koko rakenteen sijaan funktioille.

Miksi osoittimet eivät ole turvallisia?

Turvallisuus: Tekijä ei sallimalla osoittimia , Java tarjoaa tehokkaasti toisen tason abstraktiota kehittäjälle. Mikään osoitintuki ei tee Javasta enemmän turvallinen koska ne osoittavat muistipaikkaan tai niitä käytetään muistin hallintaan, mikä menettää turvallisuuden, kun käytämme niitä suoraan.