「eval」を使わずにパッケージ修飾された Simulink クラスを生成するにはどうすればよいですか。
Show older comments
実行時に決まるクラス名を使ってオブジェクトを生成したいのですが、対象のクラスは Simulink 関連の名前空間のようなパッケージ配下にあります。現在は完全修飾クラス名を文字列として組み立て、eval を使ってコンストラクターを呼び出しています。
以下に一般化された例を示します。
function obj = createObject(packageName, className)
qualifiedName = sprintf('%s.%s', packageName, className);
obj = eval(sprintf('%s()', qualifiedName));
end
obj = createObject('Simulink', 'Parameter');
動的にパッケージ修飾されたオブジェクトを生成する際に、eval を使わない方法を知りたいです。
Accepted Answer
More Answers (0)
Categories
Find more on コード生成 in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!