首页 > 代码库 > C++11中的有趣的新特性(constexpr ) (Range-based for loop)

C++11中的有趣的新特性(constexpr ) (Range-based for loop)

#include <iostream>
#include<stdexcept>
using namespace std;

//constexpr keyword
constexpr int sqare(int tmp)
{
    return tmp*tmp;
}

int main()
{
    int myArray[sqare(2)]={1,2,3,4};

    //Range-based for loop
    for(int  &tmp : myArray)
    {
       tmp++;
    }

    for(int  tmp : myArray)
    {
        cout<<tmp<<endl;
    }

    return 0;
}

执行结果:(点击可放大)


可以看出:constexpr 比宏更灵活,而Range-based for loop比旧式for循环更简洁(安全)。

C++11中的有趣的新特性(constexpr ) (Range-based for loop)