リーダブルコード第4部を読んだメモ

O'Reilly Japan - リーダブルコード をざっと読んで気になったところのメモ。

第4部は選抜テーマ

14章 テストと読みやすさ

最近のC++では、以下のように配列リテラルをそのまま引数として渡せるようになっている。

CheckScoreBeforeAfter({-5, 1, 4, -99998.7, 3}, {4, 3, 1});

知らなかったので手元でやってみた。

#include <iostream>
#include <vector>
using namespace std;

void f(vector<int> v)
{
  for(size_t i = 0; i < v.size(); i++) {
    cout << v[i] << endl;
  }
}

int main()
{
  f({1, 2, 3});
}
$ g++ -v
組み込み spec を使用しています。
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-pc-cygwin/5.4.0/lto-wrapper.exe
ターゲット: i686-pc-cygwin
configure 設定: (略)
スレッドモデル: posix
gcc バージョン 5.4.0 (GCC)

$ g++ a.cpp -std=c++11 && ./a
1
2
3

おおー。

15章 「分/時間カウンタ」を設計・実装する

最近まともにコードを読んでなかったし、まともなコードも読んでなかったので楽しかった。