"++" vs "+=" on function parameter

claptrap clap at trap.com
Sun Mar 8 02:28:31 UTC 2026


```
module test;
import std.stdio;

void foo(int pos)
{
     writeln("inside foo : ",pos);
}

void main()
{
     writeln("++");
     int p = 0;
     foo(p++);
     writeln("after foo : ",p);

     writeln("+=1");
     p = 0;
     foo(p+=1);
     writeln("after foo : ",p);
}
```

prints:

++
inside foo : 0
after foo : 1
+=1
inside foo : 1
after foo : 1

seems inconsistent to me, probably stuck with it now though I 
guess?

probably bad form to use "+=" on a parameter, might be a 
candidate for depreciation?





More information about the Digitalmars-d mailing list