..


Sponzorirani linkovi

Preopterećenje nove i brisati operatora u C + +

Članak je napisao Damiano Verda
Stranica 1 od 2

Među osobitosti C + + jezika od drugih programskih jezika, sigurno ćemo utvrditi mogućnost proširenja uporabe mehanizma također preopterećeni operatori, osim funkcije ili metode klase.

U Ukratko, "preopterećenja je, općenito, mehanizam za razlikovanje funkcija s istim imenom (i obično učiniti slično, ali ne i identična) temelji se na broju i vrsti parametara isporučene.
Na primjer, ja definirati dva ispisa funkcije, generički (nema parametara) koji ispisuje niz unaprijed informacija, a drugi u kojem korisnik može odrediti postavljanjem parametara na odgovarajući način, koje su informacije od interesa i stoga se mora ispisati.

Ispis funkcija je, dakle, u ovom slučaju redefinirani tako da odgovaraju različitim informacijama koje korisničkog unosa. Slično tome, C + + vam omogućuje da redefinira operatora: razmišljamo o matematičkim operatorima "+", "-", "*" i "/". To može biti zanimljivo i praktično, na primjer, redefinirati "+" operator primjenjuje se ako ne brojevi, ali nizova (kompleta alfanumeričkih znakova). U potonjem slučaju, "zbroj" odgovara stjecajem žice, na primjer, ako je string "Zdravo", a B u nizu "svijet", operaciju

 



 niz C = A + B

 
dovesti do stvaranja niza C, čija je vrijednost "Hello World".

'S preopterećen, a posebno operatora preopterećenja u C + + , još uvijek se liječi u prethodnom članku, na koje upućujemo za daljnje istraživanje.

Mi smo sada predlaže za razmatranje, međutim, posebno kako je ovaj isti mehanizam može proširiti i na druge vrste operatora i koliko je koristan, posebice s obzirom na nove i brisati operatora, koristan za upravljanje memorijom.

Memorija za upravljanje

Novi i brisanje operatori su korisni za upravljanje memorijom, posebno rezervirati i dodijeliti (ili dodijeliti) memorije potrebne za novi objekt (novi) i free (ili drukčije pridijeliti) memorije za buduće korištenje (brisanje).

Vrlo zanimljiv aspekt C + +, što ga razlikuje od C, to je postojanje nove i brisati, koje omogućavaju, na primjer, s obzirom na nove, za izračunavanje potrebni prostor za svaki objekt automatski (dok naredba ekvivalent C, malloc, traži programera za odrediti što je veličina objekta koji se dodjeljuju).

U ovom trenutku to je prirodno da se čudo što bi moglo biti korisnost mehanizma za preopterećenja, jer snagu novih i brisati je samo velika općoj uporabi, čini se nepotrebno da bi nova definicija koja uzima u obzir broj predmeta. Cijena operatera je tako općenito, ali, kao što se često događa, određeni manjak u kontrolu. Na primjer, to nije moguće, koristeći zadani verzija novog operatera, jednostavno provjerite da li je bilo problema u raspodjeli potrebne memorije (memorije dostupno? Dodijeljeno je ispravno?). Riješiti ovaj problem se može pribjeći "preopterećen.

Tako ćemo razgovarati sada s jednostavan primjer, slučaj preopterećenja novih operatera, ističući da se razmatranja s obzirom i postupci vrijede čak i ako želite izbrisati iz operatora preopterećenja.

U istoj kategoriji ...
E-učenje
CSS (tečaj) CSS (tečaj)
Web dizajn i dostupnost u skladu s W3C CSS i XHTML. Počevši od 29 €.
Paint Shop Pro (prvi) Paint Shop Pro (prvi)
Web grafike i obradu fotografija s Corel PSP poznat. Od 49 €.
PHP (tečaj) PHP (tečaj)
Cijeli tečaj za izradu dinamičkih Web stranica. Od 49 €.
Sponzorirani linkovi