Aký je zmysel používania ukazovateľov v C++?
Aký je zmysel používania ukazovateľov v C++?

Video: Aký je zmysel používania ukazovateľov v C++?

Video: Aký je zmysel používania ukazovateľov v C++?
Video: Трансильвания Румыния 🇷🇴 Путешествие в Салина Турда Алба Юлия и Сибиу. Отель и достопримечательности 2024, Apríl
Anonim

Jeden dôvod používať ukazovatele je tak, že premennú alebo objekt možno upraviť vo volanej funkcii. In C++ je to lepšia prax použitie referencie ako ukazovatele . Aj keď referencie sú v podstate ukazovatele , C++ do určitej miery skrýva skutočnosť a pôsobí, ako keby ste prechádzali hodnotou.

Podobne sa môžete opýtať, prečo sa neodporúča používať ukazovatele v C++?

Inteligentný ukazovatele zvyčajne sledujú objekty, na ktoré ukazujú, za účelom správy pamäte. Zneužívanie ukazovatele je hlavným zdrojom chýb: neustále prideľovanie, udeľovanie a odkazovanie, ktoré musí vykonávať program napísaný pomocou ukazovatele predstavuje riziko, že dôjde k úniku pamäte.

Okrem vyššie uvedeného, kedy by som mal použiť ukazovatele C++? Kedy použitie Čo Použite ukazovatele : Použite ukazovatele ak ukazovateľ aritmetický alebo prechádzajúci NULL- ukazovateľ je potrebné. Napríklad pre polia (Všimnite si, že prístup k poliam je implementovaný pomocou ukazovateľa aritmetika).

Ak vezmeme do úvahy toto, aké sú výhody používania ukazovateľov?

Major výhod z ukazovatele sú: (i) Umožňuje riadenie štruktúr, ktorým je dynamicky prideľovaná pamäť. (ii) Umožňuje efektívnejšie odovzdávanie polí a reťazcov. (iii) Umožňuje odovzdať funkciám adresu štruktúry namiesto celej štruktúry.

Prečo nie sú ukazovatele bezpečné?

Zabezpečenie: Podľa nie dovoľovať ukazovatele , Java efektívne poskytuje vývojárom ďalšiu úroveň abstrakcie. Žiadna podpora ukazovateľov robí Javu viac zabezpečiť pretože ukazujú na umiestnenie pamäte alebo sa používajú na správu pamäte, ktorá stráca bezpečnosť, keď ich používame priamo.