当前位置: 首页 > news >正文

中企动力官做网站怎么样济南手机网站定制费用

中企动力官做网站怎么样,济南手机网站定制费用,中山里水网站建设,最新网站开发需求文档概念 使用const string&作为参数是先使用字符串字面量编译器会创建一个临时字符串对象然后创建std::string。 或者一个函数提供char*和const string&参数的两个版本函数,不是优雅的解决方案。 于是需要一个只使用内存不维护内存的类。 原理 在visual s…

概念

使用const string&作为参数是先使用字符串字面量编译器会创建一个临时字符串对象然后创建std::string。

或者一个函数提供char*和const string&参数的两个版本函数,不是优雅的解决方案。

于是需要一个只使用内存不维护内存的类。

原理

在visual studio 2019中查看std::string_view的源码。

using string_view = basic_string_view<char>;

std::string_view构造时只使用内存,没有析构函数。

    constexpr basic_string_view(_In_reads_(_Count) const const_pointer _Cts, const size_type _Count) noexcept // strengthened: _Mydata(_Cts), _Mysize(_Count) {
#if _CONTAINER_DEBUG_LEVEL > 0_STL_VERIFY(_Count == 0 || _Cts, "non-zero size null string_view");
#endif // _CONTAINER_DEBUG_LEVEL > 0}

使用内存:

    _NODISCARD constexpr const_iterator begin() const noexcept {
#if _ITERATOR_DEBUG_LEVEL >= 1return const_iterator(_Mydata, _Mysize, 0);
#else // ^^^ _ITERATOR_DEBUG_LEVEL >= 1 ^^^ // vvv _ITERATOR_DEBUG_LEVEL == 0 vvvreturn const_iterator(_Mydata);
#endif // _ITERATOR_DEBUG_LEVEL}

其他,std::string_view没有c_str();函数,只有data();,其他函数与std::string类似,新增加了remove_prefix();和remove_suffix();函数来修改使用内存的区间。

    constexpr void remove_prefix(const size_type _Count) noexcept /* strengthened */ {
#if _CONTAINER_DEBUG_LEVEL > 0_STL_VERIFY(_Mysize >= _Count, "cannot remove prefix longer than total size");
#endif // _CONTAINER_DEBUG_LEVEL > 0_Mydata += _Count;_Mysize -= _Count;}constexpr void remove_suffix(const size_type _Count) noexcept /* strengthened */ {
#if _CONTAINER_DEBUG_LEVEL > 0_STL_VERIFY(_Mysize >= _Count, "cannot remove suffix longer than total size");
#endif // _CONTAINER_DEBUG_LEVEL > 0_Mysize -= _Count;}

应用

#include <iostream>
#include "string_view"
using namespace std;
void main() {const char* p = "aaa";std::string_view sv(p,strlen(p));cout << sv.data() << endl;
}

参考:

《c++20高级编程第5版》

http://www.yayakq.cn/news/177901/

相关文章:

  • 简单flash个人网站免费软件看视频
  • 中国3.15诚信建设联盟网站wordpress登录才能看见文章
  • 滨江区建设局官方网站自助建微网站
  • 简单房地产网站在哪免费营销软件网站
  • 做前端网站用什么软件写代码吗域名和网站名不一样
  • 大型地方门户网站源码邢台抖音优化
  • 深圳响应式网站制作自助服务系统网站
  • 怎么黑进网站后台安徽省工程建设网站
  • 行业门户网站建设wordpress悬浮搜索框
  • 如何优化啊里网站排名个人网站模板 免费
  • 网站建设营销策划方案上海最大企业前十名
  • 教学设计代做去什么网站界面设计优秀的网站有哪些
  • 网站建设与推广公司连云港市建设局网站
  • 如何在网站上做qq群链接镇江网站制作教程
  • 网站开发所需要的条件深圳特区专业网站建设公司
  • 企业网站 模版阳东网站seo
  • 注册网站怎么注册广州网站制作后缀
  • 网站建设的客户需求调查与分析成免费crm软件
  • 网站开发维护网页游戏网站首页
  • 西安开发网站建设python菜鸟教程官网
  • 网站的301重定向怎么做网站流量地址评价是什么意思
  • 做刀网站网站服务器查找
  • 石家庄视频网站建设公司wordpress的修订
  • 接私活做网站旅游电商网站建设方案
  • 电子商务网站建设与维护能赚多少钱网站制作 php
  • 设计师接私单做网站建筑工程施工承包合同
  • 公司制作网站费用免费网站推广服务
  • 手机网站信任从哪里设置企业公司建网站的步骤
  • 自学做视频网站成都到西安高铁
  • 广东住房和城乡建设厅官方网站甘肃省建设局网站首页