流迭代器--让你的代码简洁不易懂(装逼神器)

#include 
#include 
#include 
#include 
#include 
#include 
using namespace std;
using namespace std::chrono;
 
int main(int argc, char **argv) {
	auto start = system_clock::now();
	ifstream infile("in.txt");
	istream_iterator cinIter(infile);
	istream_iterator endOfStream;
	vector vec(cinIter, endOfStream);
	auto end = system_clock::now();
	auto duration = duration_cast(end - start);
	cout << "cost: " 
		 << double(duration.count()) * microseconds::period::num / microseconds::period::den 
		 << " seconds" << endl;
	return 0;
}

这段代码主要测试了插入元素的速度,但是核心代码只有vec 定义的那一句,仅仅一句话就完成了数量不定个元素的插入,简直惊呆了我。综合利用流迭代器和标准算法库可以很方便的编写代码。

int main(int argc, char **argv) {
	ostream_iterator outIter(cout, "\n");
	istream_iterator inIter(cin), endOfStream;
	while(endOfStream != inIter)
		*outIter++ = *inIter++; 
	return 0;
}

 

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