- 主题:关于现有代码 string_view 改造,下面的场景用法正确吗?
string_view传参没问题,事实上string都有cow,所以直接传值也没什么大问题。
【 在 speedboy2998 的大作中提到: 】
:
: 下面这个 TestSV类,前面两个 string 版本的成员函数是不是可以完全被后面两个取代?
:
: class TestSV { private: void set_name(const std::string& name) { _name = name; } const std::string& get_name() { return _name; } void set_name_sv(std::string_view name_sv) { _name = name_sv; } std::string_view get_name_sv() { return std::string_view(_name); } private: std::string _name; };
--
FROM 124.64.18.*
仔细看了一下, std::string确实没有, 记错了.
这么儿来说,stringstream要获取它的data, 根本就没可能了. 唯一的出口str()还是 copy的.
【 在 here080 (hero080) 的大作中提到: 】
谁告诉你string都有COW?不要误导
A
--
FROM 120.244.224.*
只能说艹, 是个人都想要获取底层数据首指针和长度,结果到现在才出.
【 在 here080 (hero080) 的大作中提到: 】
: C++20新增加了:
: * view()方法,返回一个string_view.
: * str()方法可以移动内容返回了。
: ...................
--
FROM 120.244.224.*
不过QBuffer已经用的很爽了, 这才是工业级的库.
【 在 here080 (hero080) 的大作中提到: 】
: C++20新增加了:
: * view()方法,返回一个string_view.
: * str()方法可以移动内容返回了。
: ...................
--
FROM 120.244.224.*
std 库展望了好多未来, 结果导致好多必须的接口活活憋死.
如果是允许分段存储, 那应该有 nchunk(), chunk_data(i), 然而也没有.
【 在 here080 (hero080) 的大作中提到: 】
: 我猜stringstream实现上为了效率不要求连续内存空间吧?
--
FROM 120.244.224.*
搞得我QtCore和std 夹着用.
【 在 hyperLee (老李) 的大作中提到: 】
: std 库展望了好多未来, 结果导致好多必须的接口活活憋死.
: 如果是允许分段存储, 那应该有 nchunk(), chunk_data(i), 然而也没有.
--
FROM 120.244.224.*
赞!
【 在 hgoldfish @ [CPlusPlus] 的大作中提到: 】
:
: 我昨天用 qt lite 的办法,编译 qt 的时候 configure 命令行加上 -optimize-size --disable-feature-big_codecs 和 --disable-feature-mime-databases,把 qtcore 的 dll 从 8.7M 降到 3.4M
:
: 【 在 hyperLee (老李) 的大作中提到: 】
: : 搞得我QtCore和std 夹着用.
--
FROM 124.64.16.*