問題タブ [virtual]
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.
virtual - Postfix仮想:親ドメインはサブドメインと一致します-私はそれを望んでいません
/ etc / postfix /virtualファイルがあります:
@ sub.domain.comへのメールはまだuser1に送られますが、それは私が望んでいることではありません。念のため、私の/etc/postfix/my.cnfは次のとおりです。
parent_domain_matches_subdomainsを空に設定していることに注意してください。しかし、それでも役に立ちません。何か案は?
c++ - ここで不思議なことに繰り返されるテンプレートパターン(C ++)を使用できますか?
私は次のようなものに単純化できるC++アプリケーションを持っています:
私のアプリケーションはパフォーマンスが重要です。コレクションには通常、何千ものウィジェットがあります。AbstractWidget(数十ある)から派生したクラスは、通常、仮想関数の多くをオーバーライドしないままにします。オーバーライドされるものは、通常、非常に高速な実装になります。
これを考えると、いくつかの巧妙なメタプログラミングでシステムを最適化できると思います。目標は、コードを管理しやすくしながら、関数のインライン化を活用し、仮想関数の呼び出しを回避することです。不思議なことに繰り返されるテンプレートパターンを調べました(説明については、ここを参照してください)。これは私が望むことをほぼ実行しているようですが、完全ではありません。
ここでCRTPを機能させる方法はありますか?または、誰かが考えることができる他の賢い解決策はありますか?
linux - 仮想デスクトップ(Linux)で実行されているアプリケーションの制御
仮想Xorgデスクトップ(たとえばデスクトップ#2)でアプリケーションを実行し、ルートデスクトップ(デスクトップ#1)で実行されている別のアプリを介してアプリケーションを制御する必要があります。これには、画面キャプチャとマウスの動きが含まれます。つまり、基本的には、デスクトップ#2からアプリケーションウィンドウをキャプチャし、それをスクレイプしてから、デスクトップ#1のアプリからボタンをクリックします。とにかくあなたはアイデアを得ました。
今私の大きな質問は:それは実行可能ですか?もしそうなら、それを行うのに最適な言語は何ですか?
ところで私はLinuxを使用しています
前もって感謝します
ルーク
.net - .NET での仮想ファイル システムの実装
少し前に、.net 開発者が仮想ファイル システムを実装できる見栄えの良いフレームワークを見つけました。ブックマークしたつもりだったのですが、どうやらブックマークしていないようです。
これを行うためのフレームワークを知っている人はいますか?
編集:ここにヒントがあります...キャッチーな短い名前と独自のドメインがありました。すみません、覚えているのはそれだけです:p
c++ - 仮想comポートc ++を開発する方法
会社が持っているアプリがcom "comCompanyNameV1"を読み取ることができるように、仮想comポートを開発するように言われました..そして、私はまだコンパイルに近づくために何かを取得する必要があります。主な理由は、ビルドに使用するように概説されているツールが利用できなくなったためです。
仮想COMポートを作成できるようにする方向に誰かが私を向けることができますか? 1 か月かけてゼロからどうすればよいかを考えたくないのです。
ああ.. C ++以外の言語でそれを行う方法を知っている人がいれば、私もそれでうまくいきます.
言い忘れました。実際のハードウェアは com1 に接続されている可能性がありますが、カスタムの名前の com でアプリを読み取る必要があります。これはサードパーティのアプリであり、なぜ奇妙な名前の com を選んだのかはわかりませんが、そうしました。
c# - インターフェイス/基本クラスのC#列挙型?
列挙型に問題があります
基本クラスまたはインターフェイスで列挙型を作成する必要があります (ただし、空のもの)
そして、いくつかの親クラスで異なる列挙型を作成した後
そして今、私は列挙型を使用しなければならないときにメソッドを持つ次のクラスを持っています
そのようなことをする方法はありますか?
そうでない場合は、すべてのクラスで静的 int を使用する必要があります...
コードの見た目は悪くありません...一部のクラスでは、〜20以上の変数を使用する必要があります
c++ - 上記の場所でこのコードがクラッシュするのはなぜですか?
上記の場所でこのコードがクラッシュする理由を詳しく説明していただけますか?私はこれに少し困惑しています。何か関係があると思いますがsizeof(int)、よくわかりません。誰か説明できますか?
c# - すべてを「仮想」にしてみませんか?
重複の可能性:
C#がデフォルトでメソッドを非仮想として実装するのはなぜですか?
私は主にC#、. NET 3.5について話していますが、一般に、すべてを「仮想」と見なさないことの利点は何でしょうか。つまり、子クラスのインスタンスで呼び出されるメソッドは、常に子のほとんどのバージョンを実行します。その方法の。C#では、親メソッドが「仮想」修飾子でラベル付けされていない場合、これは当てはまりません。例:
上記で観察された非仮想動作の利点は正確には何ですか?私が考えることができた唯一のことは、「親の作者が彼のメソッドを仮想化したくない場合はどうなるか」ということでした。しかし、そのとき、私はそのための良いユースケースを考えることができないことに気づきました。クラスの動作は非仮想メソッドの動作に依存していると主張する人もいるかもしれませんが、カプセル化が不十分であるか、メソッドを封印する必要があるように思われます。
これらの同じ線に沿って、「隠す」は通常悪い考えのようです。結局のところ、Childオブジェクトとメソッドが作成された場合、Parentをオーバーライドする特定の理由で作成されたようです。また、ChildがNonVirtual()を実装(および親を非表示)する場合、Child :: NonVirtual()を呼び出すことの「予想される」動作を多くの人が考える可能性のあるものを取得しないのは非常に簡単です。(「非表示」が発生していることに気付かないことがあるため、「期待」と言います)。
では、すべてに「仮想」動作を許可しないことの利点は何でしょうか。予期しない動作が発生しやすい場合に、非仮想の親を非表示にするための適切なユースケースは何ですか?
なぜ私がこの質問をするのか知りたい人がいたら、私は最近CastleProjectsDynamicProxyライブラリを調べていました。これを使用する際の主なハードルの1つは、プロキシするメソッド(またはプロパティ)が仮想である必要があることです。そして、これは開発者にとって常にオプションであるとは限りません(ソースを制御できない場合)。言うまでもなく、DynamicProxyの目的は、プロキシされたクラスと、プロキシで達成しようとしている動作(Loggingやメモ化の実装など)との結合を回避することです。そして、仮想メソッドにこれを強制的に実行させることで、代わりに達成されることは非常に薄いですが、DynamicProxyをプロキシしているすべてのクラスに鈍く結合します-想像してみてください。継承およびオーバーライドされることはありませんが、virtualというラベルの付いたメソッドがたくさんあります。
とにかく、そこでの欲求不満は、すべてが仮想であることがより明確であり(IMO、私は推測する)、おそらく(?)より多くの利点があるように見えるときに、非仮想の利点は何であるか疑問に思いました。
編集:主観的な答えがあるかもしれない質問のように見えるので、コミュニティウィキとしてラベル付けする
c++ - 仮想メンバー関数へのポインター。それはどのように機能しますか?
次の C++ コードを検討してください。
推測する必要がある場合、通常のメンバー関数と仮想メンバー関数へのポインターの間に明示的な分離がないため、このコンテキストでの &A::f は「A の f() の実装のアドレス」を意味すると言えます。 . A は f() を実装していないため、コンパイル エラーになります。しかし、そうではありません。
それだけではありません。次のコード:
実際に B::f を呼び出します。
それはどのように起こりますか?