Saving a variable from a function with a different name
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Ziv Kassner
el 4 de Nov. de 2015
How can I save a variable from a function into the workspace? example:
function new_name = A(a,b)
new_name = a+b;
end
I want that in the end, the variable 'new_name' will appear in the workspace.
0 comentarios
Respuesta aceptada
Stephen23
el 4 de Nov. de 2015
Editada: Stephen23
el 4 de Nov. de 2015
Simple: call that function with that variable name as its output argument:
var_name = A(X,Y);
will define var_name in the workspace where the function is being called. Passing arguments is the fastest, simplest and neatest way of passing variables between workspaces, and this is what MATLAB themselves recommend (see link below). Whatever you do, do not learn sloppy buggy programing by passing arguments using assignin or globals. Although beginners love using them, actually both of these methods make code slower and buggier.
The entire concept of functions is very similar to encapsulation, which is broken when you start passing variables willy-nilly in and out of their workspaces. It is a bad idea.
Más respuestas (0)
Ver también
Categorías
Más información sobre Whos en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!