Using the global operator

4 visualizaciones (últimos 30 días)
ektor
ektor el 9 de Mayo de 2019
Comentada: Walter Roberson el 9 de Mayo de 2019
I have a function below.
As you can see if t==1 I create a vector kk. However, I can not use this kk in the 'else' statement unless I use 'global kk''. Is that correct?
function [ll mm]= ssample(e2,t)
global kk
if t==1
kk=zeros(T,1);
for s=1:T
kk(s) =...;
end
else
for s=t:T
ll =kk(s) ;
end
end
mm=kk;
end
  5 comentarios
ektor
ektor el 9 de Mayo de 2019
I edit my question. t is defined and it starts from t=1. Should I use global?
Walter Roberson
Walter Roberson el 9 de Mayo de 2019
We would need the calling code to be sure that t starts at 1.
Better to avoid the matter, such as the way Matt suggests.

Iniciar sesión para comentar.

Respuesta aceptada

Matt J
Matt J el 9 de Mayo de 2019
No, you should not use global. Your code should look like this:
function [ll, mm, kk]= ssample(e2,t,kk)
...
end

Más respuestas (0)

Categorías

Más información sobre Logical en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by