C++でベンチマーク

C++11から追加されているchronoを使用する.

サンプルコード

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

int fanc(int n) {
    return n == 0 ? 1 : n * fanc(n-1);
}

int main() {
    auto start = chrono::system_clock::now();
    int a = fanc(100000);
    auto end = chrono::system_clock::now();

    cout << chrono::duration_cast<std::chrono::nanoseconds>(end-start).count() << " ns" << endl;

    return 0;
}

結果

1979000 ns