はい、まさしくそのとおり。 (半端な)OOを効率よく実装するための言語がC++。なので、自己破壊的メソッドをまず先に定義してから、それを利用して非破壊的メソッドを実装するというのが定石です。非破壊的メソッドなら新たにオブジェクト生成せにゃならん分コストがかかるからね。 Stroustrupの著書とかよく読んでみましょう;-)