次の MQL コードがあります。
class Account {};
class Trade {
protected:
struct TradeParams {
uint slippage; // Value of the maximum price slippage in points.
Account *account; // Pointer to Account class.
};
TradeParams trade_params;
public:
void Trade(TradeParams &_params) {
trade_params = _params; // Error: '=' - structure have objects and cannot be copied.
}
};
ただし、MetaTrader プラットフォームは、次のエラーのためにファイルをコンパイルしません:
'=' - 構造体にはオブジェクトがあり、コピーできません TestTrade.mqh 17 21
MetaEditor 5.00 ビルド 1601 (2017 年 5 月) を使用しています。
この同様の質問を確認しましたが、構造体には文字列などの複雑なオブジェクトが含まれていません。提案は、私が実際に使用している構造体の代わりにポインターを使用することです。私の目標は、上記のように構造体引数を持つクラス コンストラクターを持つことです。
上記の構造体定義の何が問題で、どのように修正できますか?