关于vector.size()和string.length() 的返回类型 size_type

  今天写循环的时候碰到一个问题,发现:string.length()返回的类型是size_type。它是unsigned 类型。string::size_type它在不同的机器上,长度是可以不同的,并非固定的长度。但只要你使用了这个类型,就使得你的程序适合这个机器。与实际机器匹配。

  如果你的机器是32位的,那么 int  len = str.length(),就侥幸对了。

  如果你的机器是64位的,那么你就 被fuck 了。

  unsigned 类型两个数相减,如果是结果负数,就fuck了!显然不会得到想要的结果

posted on 2016-02-24 23:09  暴力的轮胎  阅读(1808)  评论(0编辑  收藏  举报

导航