cpp 判断数组的某一个位置 是不是空的 应该怎么写呢?

2015-10-05 20:46:30 +08:00
 supman

if(array[i]==null)

很不幸。。上面那个不对, 数组的类型是 string , 提示错误好像是说类型不匹配。 那么正确姿势应该是啥样呢?

1540 次点击
所在节点    问与答
5 条回复
wbingeek
2015-10-05 20:52:02 +08:00
if(array[i].empty())
htfy96
2015-10-05 20:52:32 +08:00
数组默认初始化的时候 string 是都被默认构造的

if (array[i]==std::string()) ...
supman
2015-10-05 20:55:12 +08:00
@htfy96
@wbingeek
爱死二位了 谢谢你们啦
thinkIn
2015-10-05 20:58:16 +08:00
不是 null ,应是 nul
htfy96
2015-10-05 20:59:52 +08:00
@supman 对于 string 类型 1 楼方法比较好,我的方法*可能*会发生重复构造 string 导致性能降低的情况(在循环中)。但是这个方法对大多数类型都能使用。

当然,归根结底是因为当一个数组被定义的时候是默认填满的,而没有*空*这个概念。

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

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

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

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

© 2021 V2EX