問題タブ [string-view]
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++ - istrstream のより良い代替品は?
istrstream
私のニーズにぴったりでした-基本的に、固定文字バッファを取り、行を抽出getline()
してテストする簡単な方法を教えてくださいeof()
私はプロジェクトを C++ 17 準拠に切り替えています - これは廃止されistrsteam
ました - どうやら固定バッファメモリ管理を理解できない C++ プログラマが多すぎるためです (本気ですか?!)
とにかく、istringstream
は同じ使用セマンティクスを提供しますが、構築時に固定文字バッファー全体をコピーする必要があります。
これはアンチパターンです。
私が探しているのは、 のstring_view
代わりにstring
を使用する方法istringstream
、または外部で管理された固定バッファーを処理するより良い代替手段ですstringstream
(それを指すだけでよく、そのリソースの管理について心配する必要はありません。しstrstream
たように)。
現在、VS 2017 では、これは違法であり、私が正しく理解していれば、現在の最先端の C++ ではどこでも違法です (私が間違っている場合は、間違いなく訂正してください!)
だから - アイデア?
注: Peter Sommerlad は、C++ 標準化団体に対して、この正確なアイデアを提案しています: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0448r1.pdf
c++ - std::string_viewをハッシュするには?
独自のハッシュ関数を定義しようとしてstd::unordered_map
いますが、キーとなる構造体内のフィールドをハッシュしたいと考えています。以下のコードは、私が持っているものを簡略化したものです。
私が得るエラーは次のとおりです。
ハッシュ関数のcppreference にstd::hash
よると、をサポートする必要がありstd::string_view
ます。シンプルなものが欠けているような気がしますが、理解できません。