What is it, naokirin?

C++0xの機能 (明示的な変換関数)

今回は"Explicit conversion operators"(明示的な変換関数)。 explicit operator bool(){ … } のように書いてもexplicitキーワードは今まで変換関数では意味がありませんでした。そのため、暗黙的な型変換を抑止することができませんでした。しかし、C++0xか…

C++0xの機能 (外部テンプレート)

今回は"Extern template"(外部テンプレート)。「外部テンプレート」っていうとなんだかよくわからない感じもしますが、"extern template"と書けば明らかというかそのままというか。C++を使っていて、恥ずかしながら全く気が付いていなかったのですが、今まで…

C++0xの機能 (ヌルポインタ)

記事のタイトルの括弧内に「ヌルポ」と書きたくなってしまったことはさておいて、今回は"Null pointer constant"(ヌルポインタ定数)について。訳をするときに少々悩みの種になったんですが、記事のタイトルには"constant"の訳を入れない訳を書きました。もう…

C++0xの機能 (範囲ベースのforループ)

今回はどこぞでみたことありそうなforeach文的な機能をfor文に実装した"Range-based for-loop"(範囲ベースのforループ)。今までは確かに他の言語のようなforeach文の機能を使うには単純に構文レベルでの解決はできませんでした。(よね?) (std::for_eachは存…

C++0xの機能 (型推論)

C++0xの機能。次は"Type inference"(型推論)。コレ無かったんかい!って感じですよね。私的にもこの構文があったら今までのプログラムもずいぶんとすっきりかけただろうに、と思うところがちらほら。さて、この"Type inference"。2つのやり方が今回、C++0xで…

C++0xの機能 (一般化された定数式)

なんとなく勉強してみたのでC++0x(まだ正式規格としては出ていませんが)で追加される機能について書いてみたいと思います。今日は"Generalized constant expressions"(一般化された定数式)について。一回目だからここは気前よく「RValue reference」とか書け…

C++での独自のアロケータの実装

今回はC++のアロケータを自分の作ったものを使おうというもの。うーん・・・まあnew、deleteが遅いのがどうにも我慢ならんとか、その他もろもろの理由がある場合は使うのかもしれませんが、大して使う必要はないような・・・それはさておきやってみましょう…