..
Wśród charakterystycznych cech języka C + + niż w innych językach programowania, na pewno możemy zidentyfikować możliwości przedłużenia stosowania mechanizmu operatorzy przeciążony, oprócz funkcji lub metody klasy.
W skrócie, "przeciążenia jest w ogóle, mechanizm różnicowania funkcji o tej samej nazwie (i zwykle podobne, ale nie identyczne) w oparciu o liczbę i typ parametrów dostarczone.
Na przykład, zdefiniować dwie funkcje drukowania, uniwersalne (bez parametrów), które drukuje serii określonej informacji, a drugi, w którym użytkownik może określić przez ustawienie parametrów odpowiednio, jakie informacje budzą zainteresowanie i dlatego mają być wydrukowane.
Funkcja drukowania jest więc w tym przypadku nowo, aby odpowiadały różnym informacje dostarczone przez dane wejściowe użytkownika. Podobnie, C + + pozwala na nowo zdefiniować operatorów: myślimy o operatorów matematycznych "+", "-", "*" i "/". Może to być ciekawe i praktyczne, na przykład, nowo zdefiniować "+" operator stosuje się, jeżeli nie liczby, ale ciągi znaków (zestawy znaków alfanumerycznych). W tym drugim przypadku, "suma" odpowiada konkatenacji ciągów znaków, na przykład, czy ciąg jest "Hello" i b w ciągu "świata", operacja
ciąg c = a + bdoprowadzić do utworzenia łańcucha c, którego wartość jest "Hello world".
"S przeciążony, w szczególności przeciążanie operatorów w C + + , nadal są traktowane w poprzednim artykule, do którego odnoszą się do dalszych badań.
Obecnie proponuje się jednak przyjąć, szczególnie jak ten sam mechanizm może być rozszerzona na inne typy operatorów i jak przydatne, w szczególności w odniesieniu do operatorów new i delete, przydatne do zarządzania pamięcią.
Nowych i usuwanie operatorów są przydatne do zarządzania pamięcią, w szczególności do rezerwy i przypisać (lub przydzielić) zapotrzebowanie na pamięć w nowy obiekt (nowy) i free (lub zwalnianie) pamięci do wykorzystania w przyszłości (usuń).
Bardzo ciekawym aspektem C + +, co odróżnia go od C, to jest istnienie new i delete, które pozwalają, na przykład w odniesieniu do nowych, do obliczenia miejsce wymagane dla każdego obiektu automatycznie (podczas gdy polecenie odpowiednik C, malloc, wymaga od programisty, aby określić, co jest od wielkości obiektu, które zostaną przyznane).
W tym miejscu naturalne jest, że zastanawiam się, co może być przydatność mechanizmu przeciążenia, ponieważ siła new i delete jest doskonałym ogólnego stosowania, wydaje się konieczne, aby nowa definicja, która uwzględnia liczbę przypadków. Cena operator jest tak ogólne, ale, jak to często bywa, pewien brak w kontroli. Na przykład, nie jest możliwe, przy użyciu domyślnej wersji nowego operatora, po prostu sprawdzić, czy były problemy przeznaczyć niezbędne pamięci (pamięć jest dostępna? Została rozdzielona prawidłowo?). Aby rozwiązać ten problem można odwołać się do "przeciążony.
Tak więc omówimy teraz prosty przykład przypadku przeciążenia nowy operator, podkreślając, że względy dane i procedury są ważne, nawet jeśli chcesz usunąć z przeciążanie operatorów.
| |
E-commerce z ASP (Ebook)
E-commerce i Koszyk z ASP. Tylko 35 €. |
| |
Web Design (Kurs)
Strony Web Design z HTML, CSS i dynamicznego HTML. Od 39 €. |
| |
Web Marketing (kurs)
Promocja, wyszukiwarek i marketingu. Od 39 €. |