真剣に、何が起こっていないのですか? std::string
からstd::string_view
への暗黙的な変換があり、安全でないとはみなされません。プログラマが慎重でない場合、これは確かに多くの不自然な参照を引き起こすかもしれません。一方 std :: string_viewからstd :: stringへの変換は暗黙的です。委員会は何を考えましたか?
std::string
から
std::string_view
からの暗黙的な変換を却下している:プログラマが注意しないかもしれ
ので。 それはそれは超混乱して骨までストリッピングしながら、彼らは生const char*
ポインタの代替を作成したことを素敵だ:
- 暗黙
const char*
- >std::string
:OK - 暗黙
std::string_view
- >std::string
:NOPE - 割り当て
std::string
=const char*
:OK - 割り当て
std::string
=std::string_view
:OK - アペンド
std::string
+ =const char*
:OK - アペンド
std::string
+ =std::string_view
:OK - 連結
const char*
+std::string
:OK - 連結
std::string_view
+std::string
:NOPE - 連結
std::string
+const char*
:OK - 連結
std::string
+std::string_view
:
は、私が何かをしないのですか、これは総ナンセンスであるNOPE?
結局のところ、この文字列ビューは、それをconst char*
と似ている重要な部分をすべて持たないとどのくらい役に立ちますか?それを完全にするための最後のステップをしないうちに、stdlibの生態系にそれを統合することのポイントは何ですか?結局のところ、ストリングの一部を表すオブジェクトが必要な場合、私たち自身で作成することができます。実際には、数年前に既に多くの図書館が行っていました。何かを標準化することの重要なポイントは、それを幅広いユースケースに役立てることです。
C++ 2aでこれを修正しますか?
これは疑問ではないので、私はこのトピックをオフトピックとして閉じるよう投票しています。これは暴言です。 – Barry
これはおそらくhttps://www.reddit.com/r/cppに属しています(一部のC++委員がそれを読んでいます)。 –