string的size操作返回的并不是一个int,而是string::size_type 这个类型有一个重要的细节:他是一个无符号类型的值,也就是类似于unsigned int这样的值。 那么随之而来的就有一个问题:如果在表达式中混用了string.size()和有符号数,会有意想不到的效果。因为在比较无符号数和有符号数时,有符号数会被自动转化为无符号数。