Paul D. Anderson: > I created a struct, call it "S", and some functions that operate on S. But > I'm confused about when const is useful. > > Being an old Java programmer, I use 'const' the same as I used 'final' in > Java. So most of my functions look like this: > > S for(const S a, const S b) { > S x = a; > S y = b; > // do some stuff > return a; > } > > I declare the parameters const and then copy them to work on them. > > I get error messages about not implicitly casting const S to S.
This program compiles: struct S { int x; } S foo(const S a) { S other = a; return other; } void main() {} So, what's that you actually write? When possible show programs that run! It's one of the things I have learnt from the Python groups. Bye, bearophile