using global variables to avoid passing by value
Ältere Kommentare anzeigen
It is often heard that using global variables is a bad practice.
However, personally, I often declare some variable as global to avoid passing its value to a function call.
My concern is, the function is to be called many many times, and if each time the variable which is a big chuck of data is to be passed by value to the function, it would take a lot of time for copying the data.
Therefore, is using global variable really a bad idea in this circumstance?
BTW, the global variable is not changed by the function in my case.
Akzeptierte Antwort
Weitere Antworten (1)
alelap
am 6 Apr. 2024
2 Stimmen
I agree with Jonh D'Errico's answer.
MATLAB uses a so called "copy-on-write" mechanism that is exactly designed to tackle such a circumstance:
Kategorien
Mehr zu Performance and Memory finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!