by shigemk2

当面は技術的なことしか書かない

大学でC++03を教わった私が、便利そうだと思ったC++11の新機能 #kbkz_tech

kbkz.connpass.com

@tSU_RooT

cocoa2d-xでゲーム作ろうとしたら挫折した

大学(学部)におけるC++の教育

  • C C++ Javaなどを主に教える
  • そこで教えられるC++はC++03
  • C++古いから挫折しちゃう

→これもったいなくね?

最近のC++はたぶん初心者に優しい

  • スマートポインタ
  • ユーティリティに多数の機能を追加した
  • clangのエラーメッセージはGCCより分かりやすいので、初心者でも分かりやすい

初心者こそ知るべきC++11の便利な機能

  • autoによる型推論
  • コンパイルエラーはやる気を削ぐ

  • スマートポインタ

  • C++ではメモリ管理が難しい 確保したメモリを解放する必要あるからつらい
  • unique_ptrを使えば自動解放される
  • shared_ptrを用いる

  • rand()ではなく

  • 標準のrand()は線形合同法を使うのであまりよくない
  • 分布クラスが多様で、科学技術計算に向いている

f:id:shigemk2:20150517180648p:plain

  • マクロの置き換えとしてのconstexpr
  • 指定するとコンパイル時に定数となる機能

おわりに

  • C++をつかうなら最新のものを
  • C++11普及したら良い