1
10
请务必使用
例如,
但是
|
2
5
第一个看起来很正常。
我会说出方法的名字
|
4
2
我建议换一种方式。另外,因为您要问“正”整数,所以我为正整数和非负整数分别做了两种方法。
基准代码如下:
结果:
看起来像
最后,作为旁注,您可以定义
|
5
1
对于非数字字符串,第二个将更快完成,因为它将拒绝第一个坏字符。
另外,检查字符串to_i方法-它可能会执行您想要的操作:
|
6
1
我不知道这是不是很快,但我喜欢:
也处理负数。如果您将来想要支持float,只需使用float()。 |
7
0
根据一个简单的基准,第二种方法更快,尽管我不是专家基准,所以这可能不是一个有效的基准: http://pastie.org/586777 扎勒斯的逻辑是对的。它只需要检查一次非有效字符串。 |
8
0
通知
适用于正整数和负整数,但不适用于八进制/十六进制表示、浮点等。可能无法执行最佳(未经测试),但不会浪费时间进行过早的优化。 |
MattW · 使用Gtest进行零故障前后的C++浮点比较 8 年前 |