最近给一个国外 C++项目提交代码的时候发现老外为啥 std::string 都不爱用?

79 天前
 geekvcn

大多数情况我都是用 std::string 的,一是能避免缓冲区溢出,二是操作字符串确实方便。但是我看老外代码的时候他们都是用 char 数组,导致我为了不对代码做太大的变动,也用 char 数组,截取字符串靠操作指针偏移和'\0',提取字符串靠遍历,还要考虑传进来的字符串范围定义 buf[]数组避免缓冲区溢出。

是老外有啥特殊癖好?单纯性能方面放现在的硬件上不值一提吧,换句话说为什么老外不直接把项目改为 C 语言,又要用 C++呢?

952 次点击
所在节点    程序员
2 条回复
LuckyPocketWatch
78 天前
1. 接口限制,需要和老代码兼容
2.老年程序员,国外 40+,50+的程序员一大把
3.C 语言程序员,之前用过海康威视的 SDK 示例代码,C++代码用的是 int main(void)..
4.标新立异,我就遇到过不用 SLT 的,理由是“根本就不存在 STL”
junkun
78 天前
有一个问题是 std::string 的实现不确定也不那么稳定,不同 libcpp 的 string 都叫 std::string ,glibcpp 还改过 std::string 的内部实现。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1061295

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX