clear cancela variáveis

## Seqüência de Chamamento

                clear a b c
                clear('a', 'b', 'c')
                clear(['a' 'b' 'c'])

## Parâmetros

a, b, c...

  variables of any type and size, but not protected

## Descrição

Este comando cancela variáveis que não estão protegidas. Ele remove as variáveis nomeadas do ambiente. Por si só, `clear` cancela todas as variáveis, exceto as protegidas por `predef`. Logo, os dois comandos `predef(0)` e `clear` removem todas as variáveis.

Normalmente, variáveis protegidas são bibliotecas padrões e variáveis com o prefixo '%'

Note a sintaxe particular `clear a` e não `clear(a)`. Note também que `a=[]` não cancela `a` , mas define `a` como uma matriz vazia.

If a name Var matches no variable, `clear Var` does nothing silently.

`clear()` can be overloaded for any `mlist("foo")` type, by defining a `%foo_clear()` macro. It will be called either when `clear` is explicitly applied to any mlist of this type, or implicitly when any mlist of this type is deleted when leaving the environment where it has been defined.

## Exemplos

    a = 2;
    b = 3;
    c = 4;
    clear a
    isdef("a") // F
    isdef("b") // T
    clear("b");
    isdef("b") // F

    a = 2;
    b = 3;
    c = 4;
    clear(['a' 'b' 'c'])
    isdef("a") | isdef("b") | isdef("c") // F

    function %foo_clear(o)
        disp("deleted");
    endfunction

    value = mlist("foo");
    clear value // will print "deleted"

## Ver Também

- predef
- clearglobal
- funcprot
- who
- xmlDelete

## Histórico

5.5.0 Argument can now be a matrix of strings
6.0.0 `clear` is now protected: Assignments like `clear=1` are no longer possible.
6.1.0 `clear` becomes overloadable for any `mlist("foo")`, with `%foo_clear()`.