Effacer les filtres
Effacer les filtres

what's a persistent variable????

4 vues (au cours des 30 derniers jours)
mohammad asasi
mohammad asasi le 7 Mai 2012
Hi
really I'm confused by persistent variables!!!
please help me to know what are they and their applications???
  1 commentaire
Walter Roberson
Walter Roberson le 7 Mai 2012
Please do not use your own name as a Tag. Tags are intended to reflect categories of questions, so that people can easily find related questions that might be of interest to them. If you need to find your own questions you can use the My Questions link.

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 7 Mai 2012
A persistent variable retains its values between calls to the routine.
For example
function trial
persistent times_called
if isempty(times_called); times_called = 0; end %never called before
times_called = times_called + 1;
if mod(times_called,10) == 0
fprintf('Trial called %d times so far\n', times_called);
end
%now do the real work of the routine
.....
end
The above is just one of many uses.
  1 commentaire
mohammad asasi
mohammad asasi le 9 Mai 2012
thanks for your answer

Connectez-vous pour commenter.

Plus de réponses (1)

Jan
Jan le 7 Mai 2012
At first I suggest reading the documentation
doc persistent
help persistent
The you can try it:
function myFunc
persistent V
if isempty(V)
disp('V is empty');
disp('set V to 1');
V = 1;
end
V = V + 1;
fprintf('V = %d\n', V);
Save this file and start it through the command line:
myFunc
myFunc
myFunc
And now clear the function and call it again:
clear myFunc
myFunc
myFunc
Clearer now?
  1 commentaire
mohammad asasi
mohammad asasi le 9 Mai 2012
thanks jan for your answer

Connectez-vous pour commenter.

Catégories

En savoir plus sur Historical Contests dans Help Center et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by