問題タブ [equivalence]
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.
c++ - IP アドレス v4/v6 同等性テスト
IPv4 と IPv6 の両方を使用して、デュアル スタック環境で IP アドレスの等価性をテストすることは可能ですか? もしそうなら、どのように?
私のアプリケーションは、Boost ASIO の上でwebsocket++を使用しています。
例として、私の LAN では、あるアプリケーションが でリッスンしている別のアプリケーションに接続します192.168.1.2
が、この回答の IP アドレス ゲッターを使用します。
::ffff:192.168.1.3
クライアントのアドレスとして与えます。
問題は.2
、 の元の v4 アドレスを持つ独自のノード リストがあるため.3
、上記のゲッターとディスクに保持されている v4 バージョンの単純な文字列比較によって、.3
既に接続されている場合でも への冗長接続を探すことです。
私はさらに、この点線クワッド表記により ,::ffff:192.0.2.128
も::ffff:c000:0280
.
信頼できないソースからのアドレスを受け入れる p2p アプリケーションを構築しているため、冗長な接続を防ぐために、等価性を完全にテストできる必要があります。
私の意図は実装できますか?もしそうなら、どのように?そうでない場合、v4 のみを使用する必要がありますか? 後で統合について心配するよりも、将来の機能を今すぐ含めたいと思います。
c# - 2 つのアレイ間の等価パーセンテージ
2 つの配列を比較して等価パーセンテージを計算する方法が必要なので、等価パーセンテージが (たとえば 60%) を超えた場合は、いくつかのアクションを実行します。使用言語は C# .NET 4.0 です。
c++ - HW は簡単すぎるようです - メンバーおよび非メンバー関数としての等価演算子のオーバーロード
割り当ては、動的な cstring (null で終了する char 配列) を実装するクラスを作成することです。デフォルトのコンストラクターは空の配列を作成する必要があり、サイズ n の配列を作成するオーバーロードされたコンストラクターも必要です。関数も必要です。これにより、配列がより大きなサイズに拡張されます (彼はこれをクラスに含める必要があると言いましたが、後の割り当てまで使用しません)。また、このクラスの 2 つのバージョンを作成することになっています。1 つのバージョンでは、等価演算子をメンバー関数としてオーバーロードし、2 番目のバージョンでは、等価演算子を非メンバー関数としてオーバーロードします。
これは簡単に思えるので、何かが奇妙に感じます。
メンバー版では、2 つのクラス サイズが等しい場合に true を返すように設定しました。
非メンバー バージョンの場合、サイズを整数として返すメンバー関数を作成し、演算子がオーバーロードされたときにそれらを比較しました。
外部からの入力なしにこれを提出するのはちょっと怖いです。なぜなら、私のこの解決策は、クラスで行ってきたすべてのものと比較して単純すぎるように思えるからです。後の課題のためにこのプログラムを拡張する予定であることは承知していますが、ここで私が見逃しているものがあれば、素晴らしい情報を提供してください。
cstringを比較するために使用しようとしているコードは次のとおりです。注: 割り当ての説明には、値を cstring に入力することについて何も述べていません。
CSTR の 2 つのオブジェクトを異なるサイズで初期化しましたが、等価性をテストすると、それらが等しいことが返されます。