さらにいまだに FizzBuzz 問題
ゃ、自分の主言語の C++ でもやっとくべきかなぁというのと、いま構築中の開発環境がまともに使えるかどーかの実働試験も兼ねまして。
まぁふつーに書いてもつまんなぃので、ひねくれた特徴といたしましてゎ:
ってとこでしょか。
気力が足りないので g++ 4.1.2 以外でゎ動作確認してませぬ。
#include <iostream> #include <sstream> using namespace std; int main(int, char**) { return 0; } class FizzBuzz { public: FizzBuzz(int i = 100, int f = 3, int b = 5) : i_(101 - i--), f_(--f), b_(--b), n_(i ? new(nothrow) FizzBuzz(i, f + int(!bool(f)) * 3, b + int(!bool(b)) * 5) : NULL) {} virtual ~FizzBuzz() { cout << &static_cast<stringstream&>( stringstream() << i_ << ends << ends << ends ).str()[!(f_ && b_) * 4] << &("Fizz"[bool(f_) * 4]) << &("Buzz"[bool(b_) * 4]) << "\n "[bool(n_)]; delete n_; } private: int i_, f_, b_; FizzBuzz* n_; } fizzbuzz;