web-dev-qa-db-ja.com

関数のコマンドウィンドウ出力の抑制

私が使用している関数にはdisplay()(またはコマンドウィンドウにメッセージを表示するその他のもの)が含まれているため、コードを実行するとコマンドラインに多くの(x 1200)が出力されます。追跡および観察が難しいもの。

この特定の関数の出力を抑制する方法はありますか?ステートメントをセミコロンで終了しても、明らかに役に立ちません。

21
Ali

関数の呼び出しを evalc でラップしてみてください。

evalc('out = func(arg1, arg2);');
23
SCFrench

最も簡単な方法は、ダミー関数DISP/DISPLAYを作成し、それを独自の関数と一緒にprivateフォルダーに配置することです。

private/disp.m

function disp(x)
    return
end

myFunc.m

function myFunc()
    %# ...
    disp(1)
end

disp関数をプライベートフォルダー内に配置することで、同じ名前の組み込み関数をオーバーライドしますが、このバージョンは親ディレクトリ内の関数にのみ表示されるため、他の場所で元の機能が維持されます。

このプライベートフォルダをパスに追加しないでください。パスにmyFunc.mを配置するだけです( 関連ドキュメント をお読みください)

10
Amro