Jaka jest główna różnica między usuwaniem [] a usuwaniem?
Jaka jest główna różnica między usuwaniem [] a usuwaniem?

Wideo: Jaka jest główna różnica między usuwaniem [] a usuwaniem?

Wideo: Jaka jest główna różnica między usuwaniem [] a usuwaniem?
Wideo: ELF/EMBARC Bronchiectasis conference 2023 with subtitles 2024, Może
Anonim

Powód, dla którego są oddzielne kasować oraz kasować operatorów jest to kasować wywołuje onedestructor, podczas gdy kasować musi sprawdzić rozmiar tablicy i nazwać ją wieloma destruktorami. Oczywiście używanie jednego tam, gdzie drugie jest wymagane, może powodować problemy.

Poza tym, jaka jest różnica między darmowym () a usuwaniem?

Różnice między usuwaniem operator i darmowy() funkcjonować kasować jest operatorem, podczas gdy darmowy() jest funkcją biblioteczną. usuń za darmo przydzielona pamięć i destruktor wywołań. Ale darmowy() cofnąć alokację pamięci, ale nie wywołuje destruktora. kasować jest szybszy niż darmowy() ponieważ operator jest zawsze szybszy niż funkcja.

Wiesz również, co robi usuwanie w C ++? kasować () w C ++ Usuń to operator, który jest używany do niszczenia obiektów typu array i non-array (pointer), które są stworzony przez nową ekspresję. Co znaczy Kasować operatordealokuje pamięć ze sterty. Wskaźnik do obiektu jest notdestroyed, wartość lub blok pamięci wskazywany przez wskaźnik jest zniszczony.

Jaka jest różnica między usuwaniem a usuwaniem?

Kasować oraz usunąć są definiowane dość podobnie, ale główne różnica pomiędzy to jest to kasować znaczy usuwać (tj. renderowane nieistniejące lub nie do odzyskania), podczas gdy usunąć konotacje zabrać i odstawić (ale zachowane).

Czym różni się destruktor od operatora usuwania?

Pierwszy burzyciel , zwany kompletnym obiektem burzyciel , dokonuje zniszczenia bez wzywania kasować () na obiekcie. Drugi burzyciel , zwany usuwanie destruktora , dzwoni kasować () po zniszczeniu obiektu. Jeśli obiekt jest zniszczony, ale nie usunięty ze sterty, wołając operator usuń jest źle.

Zalecana: