Funkcje class i isa używane przez konstruktory mogą być także użyte poza katalogiem metod. Wyrażenie isa(a,’class_name')
spraw dza, czy a jest obiektem danej klasy. Na przykład, każde z poniższych wyrażeń jest prawdziwe:
isa(pi,'double') isa(hello,’char') isa(p,'polynom')
Poza katalogiem metod, funkcja class przyjmuje tylko jeden argument. Wyrażenie class(a)
określa łańcuch zawierający nazwę klasy a. Na przykład na polecenia: class(pi), class(1hello'), class(p)
MATLAB odpowiada odpowiednio:
'double’
'char’
'polynom'
Wywołanie funkcji konwersji ma formę b = nazwa_klasy (a)
gdzie a oznacza obiekt klasy inny niż nazwa_klasy. W tej sytuacji. MATLAB szuka metody o nazwie nazwa_klasy w katalogu klasy obiektu a. Taki sposób postępowania zmienia obiekt jednej klasy w obiekt innej klasy. Jeśli obiekt wejściowy należy już do typu nazwa_klasy. wtedy MATLAB wywołuje konstruktor. który zwykle zwraca argumenty wejściowe.
Dwie najważniejsze funkcje konwersji typu to double i char. Konwersja do klasy double powoduje utworzenie tradycyjnej macierzy MATLAB-a. chociaż może to nie być właściwe dla niektórych klas. Konwersja do char jest użyteczna, gdy chcemy wyniki wydrukować, przedstaw iać w postaci łańcucha znaków.
Funkcja konwertująca do klasy double dla klasy wielomian to bardzo prosty M-plik. Opclynom/double .m. który jedynie sprowadza wektor współczynników, function c = double(p)
% POLYNOM/DOUBLE Zamienia obiekt polynomna wektor współczynników.
% c = double (p) zamienia obiekt typu polynom na wektor c
% zawierający współczynniki malejących potęg x.
C = p.c;
109