将字符串与另一个字符串或字符串文字进行比较是否有效?
string a;
string b;
if (a == "test")
Run Code Online (Sandbox Code Playgroud)
要么
if (a == b)
Run Code Online (Sandbox Code Playgroud)
我的同事让我使用memcmp
对此有何评论?
谢谢.
我认为你的同事有点迷恋可能的优化.
它的效率较低.std::string::operator==可以做一个非常快速的检查,等长.如果刺痛长度不相等(很常见),它可以返回false而不会看到一个角色.
在C中,memcmp必须告诉要比较的长度,这意味着你需要调用strlen两次,并查看两个字符串中的所有字符.
| 归档时间: |
|
| 查看次数: |
11737 次 |
| 最近记录: |