Ad alanı şişmesini önlemek için paketleri kullanıyorum. Örneğin, Foo
olalım bir paket içinde bir işlev ben Bar
adlı başka işlevi bu işlevi kullanmak istiyorumHer bir işlevde içe aktarmayı açıkça aramadan genel olarak bir ad alanı alabilir miyim?
function Foo()
disp('Foo');
end
FooPackage
aradı. Bu işlev alt işlevleri çağırır. Bu işlev alt işlevleri çağırır. Naif yolu
function InFunc1()
FooPackage.Foo();
end
function InFunc2()
FooPackage.Foo();
end
function InFunc3()
FooPackage.Foo();
end
Alternatif ben her işlevinde bir ithalat kullanabilirsiniz her çağrı açıkça paket adını söylemektir:
function InFunc1()
import FooPackage.*
Foo();
end
function InFunc2()
import FooPackage.*
Foo();
end
function InFunc3()
import FooPackage.*
Foo();
end
yollardan ikisi de tüketiyor. here'daki yanıt, bunun tek yol olduğunu söylüyor. Herkes daha iyi bir öneriye sahip mi?
Belki de sorununuzu "özel" bir dizini kullanarak çözebilirsiniz? – Oli