try c++11 feature auto