オブジェクトを取り込み、現在の状態を記録し、オブジェクトを更新し、別のクラスに渡す必要があるクラスを作成しています。唯一の問題は、あなたが1つのクラスから継承することができ、私は自分のプロジェクトでクラスを継承する必要があるということです。私はSystem.IO.Streamに興味があります。なぜなら、必要ならばこのクラスを自分のスレッドに移すことができるからです。主な問題は、System.IO.Stream用のインターフェイスがあるかどうかです。そうでない場合、私が依存するプロジェクトに不可欠なデータを犠牲にすることなく、私が望む機能を得る方法がありますか? (私は少しdiscoherentを鳴らす場合、私はどのように言葉この質問をする本当にわからないごめんなさい。)System.IO.Stream用のインターフェイスはありますか?
2
A
答えて
5
IEnumerable<T>
がより良いフィット感あるようですね - ストリームは周りバイトを渡すために良いですが、イテレータより一般的なオブジェクトストリームを表すのに適しています。
おそらくC#イテレータブロック(yield文など)でストリーム(たとえばソケット)やオブジェクトを読み込むものが必要です。次に、IEnumerable<T>
の処理関数やフィルタなどを使用して、後でソケット(または他のバイトストリーム)に吹き戻すことができます。
質問に答えて - いいえ、Stream
はインターフェイスを持っていませんが、あなたの質問のスレッド部分との関連性ははっきりしません。非同期IOに興味がありますか?
1
なぜStream用のインターフェイスが必要ですか?インターフェイスを実装してもクラスの機能は提供されませんが、他のクラスにその機能を提供していることを伝えるだけです。実際に複数の継承(両方から機能を取得できるように2つの基本クラス)が必要な場合は、は基本クラスを必要とします。必要なのは、Stream自体のサブクラスです。
public class MyObject : Base Object
{
}
public class BaseObject : Stream
{
}
などです。
背景/文脈が役立つかもしれません。
0
あなたがここでやろうとしていることを理解することは本当に難しいです。
これは、継承での集計の候補のようです。 System.IO.Streamを拡張する代わりに、使用するオブジェクトに1つを渡すのはなぜですか?これは、プロパティまたはget/setメソッドである可能性があります。オブジェクトを別のスレッドに渡すと、ストリームはそれを取得します。
関連する問題
- 1. emacs valgrindインターフェイスはありますか?
- 2. Windowsにはフォルダのコピー用のインターフェイスがありますか?
- 3. Delphiのインターフェイス汎用関数 - 回避策はありますか?
- 4. タイプコードのインターフェイスを使用する必要がありますか?
- 5. XMLHttpRequestsにNavigationTimingインターフェイスがありますか?
- 6. インターフェイスの変換:インターフェイスはmap [string] interface {}ではありません
- 7. VBScriptをサポートするWebインターフェイス用の優れたテストツールはありますか?
- 8. addActionListenerメソッドを実装するオブジェクト用のJavaインターフェイスはありますか?
- 9. インターフェイスにはJavaのコンストラクタがありますか?
- 10. PythonにはC#/ Javaスタイルのインターフェイスがありますか?
- 11. Windows OLE/COMインターフェイスのIDはどこにありますか?
- 12. MS ClusterとのインターフェイスをとるPythonパッケージはありますか?
- 13. System.IO.StreamをActiveX VLCコントロールで使用できますか?
- 14. system.io.streamがVisual Studioに見つかりません2017
- 15. JavaインターフェイスでGenericsをオートワイヤリングする方法はありますか?
- 16. C++でインターフェイスをシミュレートする方法はありますか?
- 17. インターフェイスにメソッドをオーバーロードする方法はありますか?
- 18. System.IO.Streamのパターン検索
- 19. コンパイルエラー - 引数の型は「System.IO.FileStream」タイプをパラメータに割り当て可能ではありません「System.IO.Stream」
- 20. は: `C#でsystem.io.stream``にsystem.net.http.httpresponemessage`
- 21. VLCメディアプレーヤーにはC#インターフェイスがありますか?
- 22. JDBCProviderインターフェイスはどこにありますか?
- 23. Modules設定インターフェイスは、Project Structure - Intellij IDEA(2016.3.3)にありますか?
- 24. typescriptには空のインターフェイスである標準タイプがありますか?
- 25. .NETインターフェイス実装用の既定の単体テストライブラリがありますか?
- 26. 方法:System.IO.Stream CrystalDecisions.CrystalReports.Engine.ReportDocument.ExportToStream(CrystalDecisions.Shared.ExportFormatType)
- 27. C#DLLからクラスのインターフェイスを実装する方法はありますか?
- 28. SymfonyにORMのインターフェイスがありますか?
- 29. UMLインターフェイスにクラスとの関連付けがありますか?
- 30. IEnumerableまたは配列をエンベロープする制約、インターフェイス、クラスはありますか?
私はIEnumerableで対戦して報告します。私の問題の一部は、私が48時間働いていて、疲れているということです。 –
IEnumerableを読んだ後、これはもっとうまくいくでしょう。ありがとうございました。 –
良い - しかし、それを試す前にベッドに行く:) –