Одиночка — это порождающий паттерн проектирования, который гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа. Проблема Одиночка решает сразу две проблемы, нарушая принцип единственной ответственности класса. Гарантирует наличие единственного экземпляра класса. Чаще всего это полезно для...
MQLでファクトリーメソッドからプロテクトされたコンストラクタを呼び出すことができないのはなぜですか?
問題はデフォルトの値で、これを削除すればすべて元通りに動作します。
MQLでは、なぜファクトリーメソッドからプロテクトされたコンストラクタを呼び出すことができないのですか?
それがどこで役に立つのか、まだ推測できていません。
どこで役に立つのか、想像がつかない。
Singletonパターンの古典的な実装。
Singletonパターンの古典的な実装です。
では、あるクラスのオブジェクトを一定数以上作成することはできないのですね。
あるクラスのオブジェクトを一定数以上作れないようにするためですか?
そうです。プログラムのすべての部分から、状態を変更できるクラスのインスタンスへのアクセスポイントが1つになるようにします。
今日見つけた、絵と擬似コードのパターンに関するクールなサイトを紹介します: https://refactoring.guru/ru/design-patterns/singleton
そう、プログラムのすべての部分から、状態を変化させるクラスインスタンスへのアクセスポイントを1つにするためです。
今日見つけた、絵と擬似コードのパターンに関するクールなサイトを紹介します: https://refactoring.guru/ru/design-patterns/singleton
了解です、ありがとうございます。以前、このような構造を使ったことがあります。
問題はデフォルト値で、これを削除すればすべて元通りに動作します。
しかし、C++では、デフォルト値でも動作する。どのような影響があるのでしょうか?
MQLのCryptEncode(CRYPT_ARCH_ZIP, data[], key[] = {1,0,0,0}, result[]をwebsocketからdeflate圧縮でフックした方はいらっしゃいますか。公開されているechoサーバ(echo.websocket.org)はこの拡張に対応していないようで、他のechoサーバは見つからず、ローカルのnode.jsでは圧縮データを復号しようとすると「zlib invalid distance too far back」というエラーが発生するようです。ヘッダーでserver_max_window_bits=15; client_max_window_bits=15を設定しましたが、サーバーがこれらの設定を確認するため、そうではないようです。MQL側では{1,0,0,0}キー以外設定できない;-(.
MQLのCryptEncode(CRYPT_ARCH_ZIP, data[], key[] = {1,0,0,0}, result[]をwebsocketからdeflate圧縮でフックアップした方はいらっしゃいますでしょうか。公開されているechoサーバ(echo.websocket.org)はこの拡張をサポートしていないようで、他のechoサーバも見つからず、ローカルのnode.jsでは圧縮データを復号しようとすると「zlib invalid distance too far back」というエラーが出ます。ヘッダーでserver_max_window_bits=15; client_max_window_bits=15を設定しましたが、サーバーがこれらの設定を確認するため、そうではないようです。MQL側では{1,0,0,0}キー以外設定できない;-(.
ご質問の内容を正しく理解すると、GZIP圧縮は主にデータのパッケージングのためにwebsocketで使用されています。
CRYPT_ARCH_ZIP定数は、通常のZIPにパックされる可能性が高いです。
mql5を使ったGZIPのpack/unpackの方法をご存知の方、私も興味があります。
私が質問を正しく理解していれば、ウェブソケットは主にGZIP圧縮を使用してデータをパックします。
CRYPT_ARCH_ZIP定数は、通常のZIPにパックされる可能性が高いです。
mql5のツールを使ってGZIPをパックしたりアンパックしたりする方法を知っていれば、私も興味があります。
私の知る限り、スイッチ {1,0,0,0} はすべてのラッピングを除去し、圧縮されたパッケージのみを残します。少なくとも "Hello "という単語は、CryptEncodeの 出力とdeflateの出力で同じように圧縮された形で表示されます。したがって、その逆もしかりです。しかし、MQLはこれ以上の設定を与えず、deflateが使用する「デフォルト」設定も表示しません。明らかに異なるが、max_window_bits と no_context_takeover だけがウェブソケットで制御できる。第一に、これらは明らかに deflate アルゴリズム (サーバーで設定される) よりも少なく、第二にこれらでさえ CryptEncode/Decode で設定することができない。