エンジニアのソフトウェア的愛情

または私は如何にして心配するのを止めてプログラムを・愛する・ようになったか

2007-02-01から1ヶ月間の記事一覧

人員交換

協力会社の人員の交代が決まりました。契約の形体の関係上その理由は伺い知りませんが、噂では費用を減らすために単価の高いベテランを低い若手に入れ替えるとか。あくまで噂なんですが。 噂であってほしいものです。

ループしない

C++

#include <iostream> #include <algorithm> #include <functional> #include <boost/lambda/lambda.hpp> using namespace std; using namespace boost::lambda; int main(int, char* []) { const int a[] = { 111, 222, 100, 99, 101 }; const int size = sizeof(a) / sizeof(*a); const int* p1 = find_if(a, a + size,</boost/lambda/lambda.hpp></functional></algorithm></iostream>…

スマート列挙型その3

C++

template<typename T> class EnumValue { public: class Result { public: explicit Result(T lhs, T rhs) : value_(lhs), result_(lhs == rhs) {} Result& operator () (T value) { result_ |= (value_ == value); return *this; } operator bool () const { return res</typename>…

スマート列挙型その2

C++

template<typename T, int N> struct In { static inline bool eval(T value, const T* values) { return (value == *values) || In<T, N - 1>::eval(value, values + 1); } }; template<typename T> struct In<T, 1> { static inline bool eval(T value, const T* values) { return (value == *values); } }</t,></typename></t,></typename>…