2009-03-16 あー 2週間くらいあいたな。 C++メモ。こないだ聞かれたので。 template<typename T> class X; X<A> x; X<const A>& x2 = x; がだめな理由。 template<typename T> class X { public: void f(T& val) { /* 何かvalを書き換える */ } /* (ry */ }; X<A> x; X<const A>& x2 = x; const A a; x2.f(a); // <- aが書き換わる が通っちゃうから、じゃね?