c++11 基于范围for循环使用

时间:2024-10-07 09:06:44
#include <iostream>
#include <tchar.h>
#include <string>
#include <vector>

int main()
{
   //auto自动推到
	std::vector<int> test_data{1,2,3,4,5};
	std::cout << "一、item 值拷贝不修改原始数据方式【test_data】\n";
	for (auto item : test_data) {
		std::cout << item;
	}

	std::cout <<"\n二、item 常量不修改原始数据方式【test_data】\n";
	for (const auto item : test_data) {
		std::cout << item;
	}

	std::cout << "\n三、item 常量引用不修改原始数据方式【test_data】\n";
	for (const auto& item : test_data) {
		std::cout << item;
	}

	std::cout << "\n四item 引用可以修改原数据test_data{ 3,4,5,6,7 }\n";
	for (auto &item : test_data) {
		item += 2;
	}
	for (auto item : test_data) {
		std::cout << item;
	}
	
	std::cout << "\n---------------------\n";
	return 0;
}

结果:

一、item 值拷贝不修改原始数据方式【test_data】
12345
二、item 常量不修改原始数据方式【test_data】
12345
三、item 常量引用不修改原始数据方式【test_data】
12345
四item 引用可以修改原数据test_data{ 3,4,5,6,7 }
34567
---------------------