< 返回新闻资讯列表
c++中string_view的用法是什么,c++ string.reverse
发布时间:2023-11-07 08:52:02
c++中string_view的用法是甚么
string_view是C++17中引入的一个新的字符串视图类型,它提供了一种轻量级的、非具有、只读的方式来访问字符串数据。它可以看做是一种只读的字符串援用,不像std::string那样需要拷贝字符串数据。
string_view的用法以下:
-
头文件:#include <string_view>
-
创建string_view对象:
std::string_view sv;
std::string_view sv1 = "hello";
std::string_view sv2 = sv1;
std::string_view sv3 = sv1.substr(0, 3);
-
string_view的功能:
- size():返回string_view中字符的个数。
- length():返回string_view中字符的个数,与size()相同。
- empty():返回string_view是否是为空。
- data():返回指向string_view中字符数据的指针。
- operator[]:返回指定位置的字符。
- substr():返回string_view的子字符串。
- remove_prefix():去掉string_view的前缀。
- remove_suffix():去掉string_view的后缀。
-
string_view的比较:
- operator==:比较两个string_view是否是相等。
- operator!=:比较两个string_view是否是不相等。
- operator<:按字典顺序比较两个string_view。
- operator<=:按字典顺序比较两个string_view。
- operator>:按字典顺序比较两个string_view。
- operator>=:按字典顺序比较两个string_view。
-
string_view的利用:
- 在函数参数中使用string_view,可以免没必要要的拷贝操作。
- 用于快速查找、匹配字符串等操作。
需要注意的是,由于string_view只是对字符串的援用,不具有字符串数据,所以在使用string_view时需要确保字符串数据的生命周期大于等于string_view的生命周期,否则会致使悬空援用的问题。