How to check the existence of a non-existent handle

18 visualizzazioni (ultimi 30 giorni)
Hello everyone,
is there any way to check if a handle exists or not? So something like: if I didnt previously declare a handle, I want a 0 as output and else a 1.
I tried ishandle,isvalid,isfield,isempty but they all don't work on a "non-existent field" so I receive an error if I didnt declare the handle.. "Reference to non-existent field 'SP'."
If I try the "exist name" function it just works for variables but not for handles
So:
handle.a=figure;
exist handle.a;
returns a 0 (dont know why since the next codepart is working so handle.a strictly speaking has to exist)
while
handle.a=figure;
a=handle.a;
exist a
returns a 1
but I'm looking for something like:
handle.a=figure;
exist handle.a
ans=1
%without setting the handle:
exist handle.a
ans=0
I hope my post is understandable. Thank you for your help! Klaus

Risposta accettata

Titus Edelhofer
Titus Edelhofer il 29 Mag 2015
Hi Klaus,
I guess
isfield(handle, 'a') && ishandle(handle.a)
is what you are looking for ...?
Titus
  5 Commenti
klaus ebert
klaus ebert il 29 Mag 2015
eval() is what I was looking for. Thank you both alot!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Function Creation in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by