std::string_view

发布时间 2023-10-30 19:39:50作者: iu本u

在原来的string操作中,大多数都是复制string进行操作,如:substr()、string&传参。它们都会复制占用额外内存

使用std::string_view犹如只是对它的视图映射进行处理,有一个指针指向一个起始位置,然后会有一个size参数去决定这个指针的移动步数。

#if 1
PrintName(std::string_view string){
    std::cout<<string<<std::endl;
}
#else
PrintName(std::string& string){
    std::cout<<string<<std::endl;
}
string Name="WKxin";
#if 1
std::string_view firstName(Name.c_str+1,5);
#else
std::string firstName=Name.substr(1,5);