2011-02-05

unique_ptrの実装は意外と面倒だ

朝早く目が覚めてしまったので、朝飯前に何かコーディングすることにした。何をコーディングするか。できればメタプログラミングがしたい。そうだ、unique_ptrはどうだろう。たしか、unique_ptrのnested typeであるpointerは、メタプログラミングが必須だったはずだ。

というわけで、さっそく、unique_ptrの実装にとりかかった。しかし、unique_ptrの実装は、意外と面倒だった。

pointerは簡単なのだが、面倒なのは、ポインターとデリーターの両方を仮引数に取るコンストラクターだ。これは、難しいというわけではないが、相当に面倒だ。

しかし、わざわざここまでして、lvalueリファレンス型のデリーターをサポートする必要があるのだろうか。デリーターは、どう考えても初心者がたやすく使いこなせるとは思えない。

No comments:

Post a Comment

You can use some HTML elements, such as <b>, <i>, <a>, also, some characters need to be entity referenced such as <, > and & Your comment may need to be confirmed by blog author. Your comment will be published under GFDL 1.3 or later license with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.