【C++11角括号】
标准 C++ 的剖析器一律将 ">>" 视为右移运算符。 但在样板定义式中,绝大多数的场合其实都代表两个连续右角括号。 为了避免剖析器误判,撰码时不能把右角括号连着写。
C++11 变更了剖析器的解读规则;当遇到连续的右角括号时,优先解析右角括号为样板引数的退出符号。 如果解读过程中出现普通括号("(" 与 ")"),这条规则产生变化:
参考:http://zh.wikipedia.org/wiki/C++0x#.E5.BC.B7.E5.9E.8B.E5.88.A5.E5.88.97.E8.88.89