Thursday, February 11, 2010

C++ doesn't guarantee the order in which function arguments will be evaluated...

... so, in particular, if you find yourself doing something like this:


something = make_pair(read_bytes_as(in), read_bytes_as(in));


you might find yourself reading the unsigned and the float in the wrong order.