2

BOOST の ForEach と独自のカスタム #define マクロを使用してコンテナーを反復処理することの違いは何ですか??

私の:

#define iterate(i,x)     for(typeof(x.begin()) i=x.begin();i!=x.end();++i)

boost:
#include <string>
#include <iostream>
#include <boost/foreach.hpp>

int main()
{
    std::string hello( "Hello, world!" );

    BOOST_FOREACH( char ch, hello )
    {
        std::cout << ch;
    }

    return 0;
}

どちらの方法が優れているのか、その理由を教えてください。

4

1 に答える 1