查看以下代码:
string str = "xxxaa bbcc";
int pos1 = str.find("a b"); // pos1=4
int pos2 = str.find('a b'); // pos2=7
int pos3 = str.find('a bb'); // error C2015: too many characters in constant
为什么第二个'a b'
没有触发任何错误?在我看来,''
只能容纳一个字符,但这里可以容纳4个字符?为什么我会得到pos2=7
(就像只传递最后一个char 'b'
一样)?
从第二个开始,似乎''
可以容纳多个字符,为什么不能超过5个字符,请参阅第三个示例?