MATLAB R2016a, bir nesnenin özellik sınıfını kısıtlamak için belgelenmiş bir mekanizma tanıttı (Bunu yapmak için daha eski, farklı, belgelenmemiş bir yol olduğunu da biliyorum, ancak ben değilim bu yöntemi kullanarak). Örneğin: kendi değerleri sınıfının RestrictedClass
olmalıdır böyleceMATLAB: sınırlı sınıf özelliklerini keşfedin
classdef MyClass
properties
myProperty RestrictedClass
end
end
özelliği myProperty
sınırlayacaktır.
Böyle bir sınıf uyguladıysanız, kısıtlı özellik sınıfını programlı olarak bulmak için MATLAB sınıf meta veri arabirimini kullanmanın bir yolu var mı?
ben
m = ?MyClass;
p = m.PropertyList(1);
kullanılırsa o zaman metaproperty nesne
p
sınıfı hakkında bilgi içeren umuyordum hangi kısıtlandı için - ama değil gibi görünüyor.
Programlı olarak keşfetmenin bir yolu var mı? Yöntemin, aslında sınıfın ortaya çıkmasını gerektirmemesi gerekecek - her ikisi de yan etkilere sahip olabileceği için ve ayrıca soyut sınıflarla çalışması gerektiğinden.
PS Ayrıca sınıfın kaynak kodunu ayrıştırmak gibi brüt hiçbir şey içermiyor. Bunu, kaynak kodu pcode
kullanarak gizlenmiş bir sınıfla yapmak isteyebileceğimi düşünün.