2012-12-01から1ヶ月間の記事一覧
新しいのでビルドしなおした時に調べ直すのが面倒だったのでメモ. gccは-vオプションで出力してくれますけど,clangは自身が作られた時のオプションどこかで見れないんですかね.
こんなコードを書きたかった. auto min = boost::min_element(rng | boost::adaptors::indexed(0), pred); // error auto i = min.index(); Rangeが何であれindexedを通すとSinglePassRangeになってしまうんですね. でもってmin_elementは比較のために複数…
transform_viewは生成できますがそこから何してもエラー. 戻り値型の推論でこけてるみたいだけれど,さっぱりわかりません. 何か変な勘違いしてますかねえ…保留. int main(int, char*[]) { struct str { template<typename T> auto operator()(T const& x) const -> s</typename>…
tupleの型操作がうまく簡単に書けなくて,ヒントを探していたら見かけた typename Func<Seq>::type... という記法に目が飛び出ました. packされたままメタ関数に渡して戻り型をunpackなんてできたんですね… 通りで,やろうとしても激しくメタメタしくなるわけで</seq>…
range adaptorを作ろうとしてるときに考えていたのが発端. 与えたrangeから何かしら別のrangeを作って返すようなことがしたい時,既に存在するrangeを渡すこともあればboost::irangeなんかで作ったrvalue refなrangeを渡したくなることもあります. パラメ…
型名には限らないんでしょうけど。 そのうちちゃんと関数にしておきましょうかね。 #include <cxxabi.h> auto demangle = [](const char* str) -> const char* { static int sta; return abi::__cxa_demangle(str, 0, 0, &sta); }; cout << demangle(typeid(ごにょごに</cxxabi.h>…
タイトルだけそのままでした. コピペの罠.
ProjectEuler_cpp/problem018.cpp at master · YuhSylphy/ProjectEuler_cpp · GitHub
ProjectEuler_cpp/problem017.cpp at master · YuhSylphy/ProjectEuler_cpp · GitHub
ProjectEuler_cpp/problem016.cpp at master · YuhSylphy/ProjectEuler_cpp · GitHub
ProjectEuler_cpp/problem015.cpp at master · YuhSylphy/ProjectEuler_cpp · GitHub