私はいくつかのGCCバグレポートを読み、そこで人々は「vstring」について話していました。WEBを検索すると、 http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-4.2/vstring_8h.htmlに気づきました。
誰かがそれが何のために有用で使用されているかについて詳しく説明してもらえますか?std :: stringの代わりに使用するのはなぜですか?
私はいくつかのGCCバグレポートを読み、そこで人々は「vstring」について話していました。WEBを検索すると、 http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-4.2/vstring_8h.htmlに気づきました。
誰かがそれが何のために有用で使用されているかについて詳しく説明してもらえますか?std :: stringの代わりに使用するのはなぜですか?
GCCは、GCC4.1の実装vstring
で導入された用途の広い文字列クラスです。libstdc++
と互換性がありstd::basic_string
、次の追加の詳細があります。
vstring_fwd.h
いくつかの便利なtypedefについてはを参照してください。DR431は、ライブラリワーキンググループの欠陥レポート431であり、オプション3は、クラスのアロケータサポートを改善して、スワッピングやその他のアロケータ関連の操作を改善するように見えます。
基本的な詳細は、GCC4.1のリリースノートの「ランタイムライブラリ」セクションにあります。
編集:
std::string
この拡張機能の本来の目的は、C++11実装の基礎を提供することであったように見えます。GCC / libstdc++の寄稿者であるPaoloCarliniは、このGCCバグレポート<ext/vstring.h>
で、次の非参照カウントの実験バージョンを含むコメントをしていますstd::string
。2012年4月12日付けのコメント:
私たちが説明しようとしたのは、この種の問題はよく知られており、多かれ少なかれ、参照カウントの実装に影響を与えるということです... 参照カウントが使用されていない場合はそうではなく、実際には使用されません(新しいC ++ 11 Standard)の新しい実装で、
std::string
<ext/vstring.h>
現在...として紹介しています。