C++中for循环的5种语法,值得学习!!!

#include   
#include   
int nArray[] = {0, 1, 2, 3, 4, 5};  
std::vector<int> vecNum(nArray, nArray + 6);  
CString strText;  

第一种用法:最原始的语法(用下标)

for (size_t i = 0; i < vecNum.size(); ++i)  
{  
    strText.Format("%d", nArray[i]);  
    AfxMessageBox(strText);  
}  

第二种用法:最原始的语法(用迭代器)

for (auto it = vecNum.begin(); it != vecNum.end(); ++it)  
{  
    strText.Format("%d", *it);  
    AfxMessageBox(strText);  
}  

第三种用法:简化数组遍历语法(从vs2008开始支持)

for each(auto item in vecNum)  
{  
    strText.Format("%d", item);  
    AfxMessageBox(strText);  
}  

第四种用法:STL函数

std::for_each(vecNum.begin(), vecNum.end(), [](int item)
{  
       CString strText;  
       strText.Format("%d", item);  
       AfxMessageBox(strText);  
};  

第五种用法:C++11新增加的(VS2012支持)

for(auto item : vecNum)  
{  
    strText.Format("%d", item);  
    AfxMessageBox(strText);  
}  

你可能感兴趣的:(C++,学习笔记)