私は頻繁に私のプロジェクトでスライス構造を使用します。C/C++には標準のスライスコンテナがありますか?
struct SSlice {
void *pData;
size_t length;
};
また、私は他のプロジェクトは、ワット/(...などRocksDB、MDB、など)をコピーOデータを操作するために同様のコンテナを使用して参照してください。そのようなコンテナを持つ標準(またはOS関連の)ヘッダーがあることを知っている人はいますか? STLでは、Linuxのヘッダーは関係ありません。
UPD。私の言及したプロジェクトにおけるそのようなコンテナの主な目的は、それをコピーしないでデータを扱うことです。例えば。私はURIパスやLDAP DNを解析し、それをスライスのベクトルとして表現します。
[コアガイドライン](https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md)は、これを達成するための「span」テンプレートの存在を推奨しています。 –
'C/C++'は[未定義の動作](https://en.wikipedia.org/wiki/Undefined_behavior)です。 を参照してください。 –
'std :: vector'のようなSTLコンテナは、' std :: move'を正しく使うと** **それを行います。そうでない場合でも、コンテナへのポインタを使用して、「データをコピーせずにデータを処理する」という効果を得ることができます。私は、あなたが達成したいと思うものにもっと具体的にする必要があると思います。 – nwp