Messages in this thread | | | Date | Tue, 8 Nov 2005 18:48:08 -0600 | Subject | Re: typedefs and structs | From | linas <> |
| |
On Tue, Nov 08, 2005 at 07:37:20PM -0500, Douglas McNaught was heard to remark: > > Yeah, but if you're trying to read that code, you have to go look up > the declaration to figure out whether it might affect 'foo' or not. > And if you get it wrong, you get silent data corruption.
No, that is not what "pass by reference" means. You are thinking of "const", maybe, or "pass by value"; this is neither. The arg is not declared const, the subroutine can (and usually will) modify the contents of the structure, and so the caller will be holding a modified structure when the callee returns (just like it would if a pointer was passed).
--linas
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |