Next: Calling Octave Functions from Oct-Files, Previous: Sparse Matrices in Oct-Files, Up: Oct-Files [Contents][Index]
Global variables allow variables in the global scope to be
accessed.  Global variables can be accessed within oct-files by using
the support functions get_global_value and set_global_value.
get_global_value takes two arguments, the first is a string representing
the variable name to obtain.  The second argument is a boolean argument
specifying what to do if no global variable of the desired name is found.
An example of the use of these two functions is
#include <octave/oct.h>
DEFUN_DLD (globaldemo, args, , "Global Demo")
{
  if (args.length () != 1)
    print_usage ();
  octave_value retval;
  std::string s = args(0).string_value ();
  octave_value tmp = get_global_value (s, true);
  if (tmp.is_defined ())
    retval = tmp;
  else
    retval = "Global variable not found";
  set_global_value ("a", 42.0);
  return retval;
}
An example of its use is
global a b
b = 10;
globaldemo ("b")
⇒ 10
globaldemo ("c")
⇒ "Global variable not found"
num2str (a)
⇒ 42