C++17引入了std::string_view作为一种非拥有字符串的视图,它可以与传统的字符串std::string互操作。下面是一些常见的方法:
std::string创建std::string_view:std::string str = "Hello, World!";std::string_view view(str);从std::string_view创建std::string:std::string_view view = "Hello, World!";std::string str(view);使用std::string_view来访问字符串的数据:std::string str = "Hello, World!";std::string_view view(str);for (size_t i = 0; i < view.size(); ++i) { std::cout << view[i];}使用std::string_view来做子字符串操作:std::string str = "Hello, World!";std::string_view view(str);std::string_view subview = view.substr(7, 5); // 获取从第7个字符开始的5个字符总的来说,std::string_view提供了一种更轻量级的字符串视图,可以在不拷贝字符串的情况下进行字符串操作,与传统的std::string互操作非常方便。


