2019-04-01から1ヶ月間の記事一覧

大学でC++の演習が始まったがムーブには触れないようなので触れさせる

弊学ではC++の演習が始まったが演習では右辺値参照とかムーブとかは全く触れない。ムーブがないC++はC++ではなくBetter Cというのはさすがに言い過ぎだが (C++03以前のC++がC++ではなくなってしまうため)、ムーブがないC++を書くならわざわざ大学でC++を学ぶ…

大学でC++の演習が始まったが例外には触れないようなので触れさせる

例外の構文 例外を投げる 例外をキャッチする 例外の基本 診断のためのライブラリ 例外仕様 古の方法 (C++17で削除) クールでスマートな最新の方法 例外を投げるべきときと投げるべきでないとき 例外は本当に便利な機能だ。戻り値でエラーを通知するC的な関…

大学でC++の演習が始まったがテンプレートには触れないようなので触れさせる

テンプレートの文法 テンプレートの初歩 テンプレートの特殊化 標準ライブラリみたいなかっこいいメタ関数を作る is_same 二つの型が加算可能か確かめる 型制約 嫌な奴は定義してやらない方法 std::enable_ifを使う方法 テンプレートで遊ぼう。(FizzBuzz) あ…

C++でスライス(2回目)

C++ではカンマ演算子をオーバーロードできる。前の記事では残念ながらC++に負けてしまったが、今度こそC++でスライスすべくカンマ演算子をオーバーロードしたプロキシクラスを書いてC++に打ち勝つことにする。 前に作った失敗作はこいつだ。ここにあるslicea…