不変型でないクラスをメソッドに渡しても、メソッド内で値を変更しないことを保証したいことがある。呼び出すとコンパイルエラーとかって助かるんだが...)さて、次に、実装ファイルを作成しよう。幾つかのマクロが重要な機能を果たす。対応版のプログラムを作成することになる。よってどちらを使うか決定するのだ。普及を考えるともういいだろう。版を使うと文字コードを気にしなくて済む。ハンドル型の型チェックを厳しくするためだ。相互に代入することができてしまう。間違ったハンドル型間で代入することを防ぐことができる。通常のプログラムではまず使用しないであろう各種宣言を、スキップし、コンパイル時間を短縮してくれる。いう巨大なヘッダを、プログラムに取り込む必要があるので、効果は高い。宣言しておくと、この記述を助けてくれる関数風のマクロを使えるようになる。"lnkfile.h"は、上で作成したヘッダファイルを取り込んだ。取り込んでおくと便利なのである。ここまで書いてやっと関数の実装になる。成功を意味する値を返すだけにしておこう。