Wielkość obiektu a szybkość wykonywania obliczeń

0

Cześć. Chciałem się zapytać czy jest jakaś zależność między wielkością obiektu a szybkością obliczeń na nim. Przykładowo, jeśli stworzymy sobie klasę, która ma wiele zmiennych, funkcji itd. i stworzymy sobie funkcję, która ma przyjąć jako argument tą klasę tj. typ_zwracany funkcja(nasza_duża_klasa obiekt){...}
to czy ona się wykona wolniej niż, gdybyśmy stworzyli sobie małą klasę (z małą ilością zmiennych składowych, wewnętrznych funkcji etc.) i przekazali ją do tej funkcji? - oczywiście zakładam, że funkcja by operowała na takiej samej ilości danych składowych obu klas.
Lub inaczej:
mamy pętlę, która się wykonuje x razy wywołując jakąś funkcję składową naszej klasy - to czy na szybkość jej wykonania będzie miała ilość innych danych składowych i funkcji naszej klasy?

0

Jeśli chcesz przekazywać ją przez wartość to owszem, będzie to wolniejsze, bo będzie tworzona kopia obiektu. Ale z reguły nic nie stoi na przeszkodzie, żeby przekazać ją jako referencję bądź wskaźnik, a to nie ma praktycznego "obciążenia" czasowego ani pamięciowego.

0

Jeśli przekazujesz obiekt swojej klasy ot tak, to zdajesz sobie sprawę z tego że do funkcji leci kopia obiektu? Przy każdym wywołaniu funkcji obiekt jest kopiowany. Gdybyś dał tam referencje lub wskaźnik to ominąłbyś to kopiowanie.

0

dzięki za wyjaśnienie i przypomnienie podstaw :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1