> void f( in_out< int > is_not_changed_ ) > { > // use is_not_changed_, but don't change it > }
I think there would be a much bigger problem (code inside the function would change). Just consider void add_char( std::string & str, char ch) { str += ch; } Now, if we change it so be in_out, we'll have to use a .ref()-like function. void add_char( in_out<std::string> str, char ch) { str.ref() += ch; } Of course, this is a simple example, but it illustrates the point. The code would become obfuscated. Frankly, I donot like it. Best, John _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost