C++/Przeciążanie operatorów: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Lethern (dyskusja | edycje)
przeniesione do dyskusji: patrz dyskusja
Lethern (dyskusja | edycje)
m naprawienie nawigacji
Linia 265:
</source>
Nie jest to może najmądrzejszy przykład gdyż jest dostępny do przeciążania operator "+" ale oddaje zasadę działania. Trzeba zaznaczyć że ten operator może zwracać '''dowolną wartość''' oraz przyjmować '''dowolną liczbę parametrów dowolnego typu'''. Niestety musi być zadeklarowany jako niestatyczna metoda klasy (gdyż inne operatory które mogą być statyczne zwracają obiekt (<code lang=cpp>&Foo operator</code>...), choć możliwość udawania przez klasę funkcji z pewnością to wynagrodzi.
 
<noinclude>
{{Nawigacja|C++|
[[C++/Obiekty stałe|Obiekty stałe]]|
[[C++/Konwersje obiektów|Konwersje obiektów]]|
}}
</noinclude>
 
== New i delete ==
Linia 347 ⟶ 340:
Operatory dekrementacji analogicznie do inkrementacji.
Należy mieć na uwadze, że przy własnych operatorach potrzebny jest "działający jak chcemy" operator= lub konstruktor kopiujący, jeśli go nie napiszemy kompilator wygeneruje go automatycznie, natomiast jeśli nasza klasa ma wewnątrz siebie wskaźniki tak w skopiowanym obiekcie będą one wskazywały na ten sam adres co wskaźniki oryginału
 
<noinclude>
{{Nawigacja|C++|
[[C++/Obiekty stałe|Obiekty stałe]]|
[[C++/Konwersje obiektów|Konwersje obiektów]]|
}}
</noinclude>