16/01/22 09:08:19.22 bim8zuhw.net
>>241
C++ core guidelines だと、
入力専用
const 参照渡し F(const T&) ただし、int とかは値渡し
出力専用
return で返す。move を使う。
入出力用
参照渡し F(T&)
っていうのを推奨してたと思う。
ご指摘の通り、呼び出し側で、const T& とT& の区別が付かないから、const T& とT* で区別するっていう流儀もあって、google の coding guideline もそうなっていたと思う。
一方 fortran は、
intent(in)
intent(out)
intent(inout)
を使うことが出来て、意図がそのものズバリ表せて分かりやすい。