[ovs-dev] [PATCH 1/3] Check the number of buckets for indirect groups.
Jarno Rajahalme
jrajahalme at nicira.com
Tue Sep 3 15:39:54 UTC 2013
On Aug 30, 2013, at 9:48 PM, Simon Horman <horms at verge.net.au> wrote:
> On Fri, Aug 30, 2013 at 01:40:16PM -0700, Jarno Rajahalme wrote:
>> + LIST_FOR_EACH(bucket, list_node, &gm->buckets) {
>> + ++n_buckets;
>
> Any reason you favour a pre-increment over a post-increment.
> I realise it makes no difference to the logic here but I am curious.
>
I guess it is a habit that stuck after writing some C++ iterators. With more complex types post-increment is costly, as it requires a copy of the original value to be made before the increment, so that the value before the increment can be returned as the value of the operation. Pre-increment is semantically simpler, as it returns the value after the increment and no copies are needed. I guess compilers can easily eliminate unneeded copies in most cases, especially whenever the iterator code gets inlined.
Besides, I just spent some time last week debugging a post-increment bug I made by assigning the value to another variable without being mindful of the fact that the statement that assigned from was a POST-increment, while I was thinking to having had assigned the incremented value.
Jarno
More information about the dev
mailing list