問題タブ [matlab-class]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - 別の.mファイルでclassdefのプロパティを使用しますか?
これが私のコードです:
fm:
test.m:
コマンドウィンドウでtestと入力すると、次のように表示されます。
matlab - Matlabのメソッドを使用してオブジェクトプロパティを設定する
私はMATLABでクラスを作成しており、オブジェクトの経験はほとんどありませんが、クラスメソッドを使用してクラスプロパティを設定できるはずです。これはMATLABで可能ですか?
matlab - MATLAB クラスで静的メンバー変数を取得する方法は?
MATLAB クラスで静的メンバー変数を定義する方法はありますか?
これは機能しません:
「Static」の代わりに「Constant」というキーワードを使用することをお勧めします。定数のプロパティは変更できません。class のすべてのオブジェクトに共通の変数がA
必要で、その変数を class のメソッドで変更できるようにしたいと考えていますA
。
したがって、私が必要とするのはプライベート静的メンバー変数です。MATLAB で取得する方法はありますか?
静的メンバー関数で永続変数を使用して回避策を実行できることがわかりました。
この場合、次のような基本クラスからすべてのクラスを継承する必要があります。
matlab - Callback Functions using Timers in Matlab
I am working on a statistical model of a content distribution server in MATLAB and have decided to use OO programming. This is my first foray into OO with MATLAB and I have hit a snag. I am attempting to model a download connection to the server, at the moment it is just a MATLAB timer and a boolean. When the timer expires I want to set the isActive
field from true
to false
. So quite simple I feel but then I have been battling with this for more then a day now. Below is the code for the class so far:
matlab - MATLAB - 変数への参照 (ハンドル?) を作成する
次のクラスがあるとします。
このクラスのインスタンスをインスタンス化し、それを少し操作してからコピーするとします。これはハンドル クラスであるため、「コピー」は実際には同じオブジェクトの別のインスタンスにすぎません。
A
しかし、 myClass をインスタンス化する必要なく見たいと思います。素朴にやっている
これは値をコピーするだけなので、機能しません。後でw.A
変更しても変更されませんvalue
。
w.A
別のハンドル クラスを作成せずに「ポインター」または「参照」を提供する方法はありますか? w.A
のようなものではなく、表記法を維持したいと思いw.A.value
ます(その値を含むハンドルクラスを作成する必要があります)。
編集: 研究室で使用するコードをカプセル化するために、この機能を使用しています。私は、MATLAB と Arduino の間のインターフェースを設計して、空中および地上の乗り物を制御しています。vehicle.pwmMax
" "、" " などにアクセスvehicle.flightCeiling
して、基になるオブジェクト " vehicle.Globals.pwmMax.value
" などをカプセル化することを望んでいました。
matlab - MATLAB - 「クリア」を使用するときにオブジェクト デストラクタを実行しますか?
class があるとしmyClass < handle
ます。のMathworks ヘルプ ページからclear
、
ハンドル グラフィックス ハンドルをクリアしても、オブジェクト自体は削除されず、オブジェクトを削除しても、ハンドルを格納している変数は削除されません。
そのため、最初clear
に明示的に指定しない限り、ハンドル オブジェクトを ing してもメモリから削除されませんdelete
。
デストラクタを指定して、myClass
適切なクリーンアップを行い、それへの参照をいくつか削除しました。このデストラクタは呼び出されませんclear
。オブジェクトがクリアされたときにそのデストラクタを呼び出すことはできますか?
編集:オブジェクトへの参照がない場合、 whiledelete
は a で自動的に呼び出されることに言及する必要があります。たとえば、 を参照するプロパティを持つ別のクラスがあります。のプロパティではないその他のプロパティが にありますが、 も空の場合は空にする必要があります。それが意味をなさない場合はお知らせください。少し言葉が多すぎた可能性があります。clear
myClass
myOtherClass
myClass
myOtherClass.a
myOtherClass
myClass
myOtherClass.a
matlab - MATLAB で列挙型と定数をローカルに定義する
関数のスコープ内で列挙型と定数をローカルに定義したいと考えています。
私は、MATLAB がそのオブジェクト指向プログラミング フレームワークの一部として列挙型と定数を提供していることを知りました。ただし、関数のスコープ内で定義しようとすると、機能しません。たとえば、次のことを試みると、MATLAB は「解析エラー: 構文が無効です」とエラーを出します。
その理由は、それぞれclassdef
が独自の.m
ファイルで定義する必要があるためです。
.m
使用するすべての列挙または一連の定数に対してファイルを作成することは避けたいと思います。これを行う方法はありますか?私のオプションは何ですか?
補遺1:
例を求められたので、ここに疑似コードを示します。この例は、ローカル列挙を定義して使用する必要があることを示しています。
またはと呼ばれる列挙型があるとcolors
します。関数でローカルに定義し、それを使用して関数内のステートメントの流れを制御したいと思います。RED
BLUE
colors
補遺2:
Java コードを利用してこれを行うことはできますか? もしそうなら、どのように?
matlab - matlabクラスのプロパティを操作できません
次のMATLABコードは機能しません。関数チェンジャーでは、MATLABは値を同じに設定するだけでなく、オブジェクトA
を等しくしようとします。B
そのための回避策はありますか?
matlab - MATLAB: プロパティ名を指定してクラス プロパティの値を取得する方法
次のように定義されたクラスがある場合
そして、私が書くプロパティ foo にアクセスしたい
しかし、プロパティ名の文字列表現しかなく、それがどのプロパティなのかわからない場合は、どうすればよいでしょうか? 以下の例のように:
私がやりたいことは、プロパティのリストを取得し、それを繰り返し処理して、特定のオブジェクトの値を取得することです。可能であるように思われますが、ドキュメントで見つけることができませんでした。
matlab - str2func を使用してクラス メソッドを呼び出すことはできますか?
str2func
特定のプロパティ値 (この場合は ) に応じて、クラスのさまざまなメソッドを呼び出すために使用しようとしていますobj.type
。
ので、私は持っています
ただし、これは機能しません。行E1 (上記) で、MATLAB はクラスselfが未定義であり、Java が実行されていない可能性があると文句を言いますか? これを機能させる方法はありますか、またはメソッドprocessでスイッチ構造を使用して、型固有のメソッドprocess_[type]を呼び出す必要がありますか?