当前位置: 首页>>代码示例>>C++>>正文


C++ BoundedBuffer::pop方法代码示例

本文整理汇总了C++中BoundedBuffer::pop方法的典型用法代码示例。如果您正苦于以下问题:C++ BoundedBuffer::pop方法的具体用法?C++ BoundedBuffer::pop怎么用?C++ BoundedBuffer::pop使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在BoundedBuffer的用法示例。


在下文中一共展示了BoundedBuffer::pop方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: test_const_buffer_back_throws_after_push_pop

void test_const_buffer_back_throws_after_push_pop() {
	BoundedBuffer<int> buffer { 5 };
	buffer.push(5);
	buffer.pop();
	auto const & constBuffer = buffer;
	ASSERT_THROWS(constBuffer.back(), std::logic_error);
}
开发者ID:paddor,项目名称:cpp-advanced-exercises,代码行数:7,代码来源:bounded_buffer_content_suite.cpp

示例2: test_const_buffer_front_throws_after_push_pop

void test_const_buffer_front_throws_after_push_pop() {
	BoundedBuffer<int, 5> buffer { };
	buffer.push(5);
	buffer.pop();
	auto const & constBuffer = buffer;
	ASSERT_THROWS(constBuffer.front(), std::logic_error);
}
开发者ID:paddor,项目名称:cpp-advanced-exercises,代码行数:7,代码来源:bounded_buffer_content_suite.cpp

示例3: test_buffer_wrap_around_behavior_back

void test_buffer_wrap_around_behavior_back() {
	BoundedBuffer<int> buffer { 3 };
	std::vector<int> backValues { }, expectedValues { 1, 2, 2, 3, 4, 4, 4, 5, 5, 6, 7, 7, 7 };
	buffer.push(1);
	backValues.push_back(buffer.back());
	buffer.push(2);
	backValues.push_back(buffer.back());
	buffer.pop();
	backValues.push_back(buffer.back());
	buffer.push(3);
	backValues.push_back(buffer.back());
	buffer.push(4);
	backValues.push_back(buffer.back());
	buffer.pop();
	backValues.push_back(buffer.back());
	buffer.pop();
	backValues.push_back(buffer.back());
	buffer.push(5);
	backValues.push_back(buffer.back());
	buffer.pop();
	backValues.push_back(buffer.back());
	buffer.push(6);
	backValues.push_back(buffer.back());
	buffer.push(7);
	backValues.push_back(buffer.back());
	buffer.pop();
	backValues.push_back(buffer.back());
	buffer.pop();
	backValues.push_back(buffer.back());
	ASSERT_EQUAL(expectedValues, backValues);
}
开发者ID:paddor,项目名称:cpp-advanced-exercises,代码行数:31,代码来源:bounded_buffer_content_suite.cpp

示例4: test_buffer_wrap_around_behavior_front

void test_buffer_wrap_around_behavior_front() {
	BoundedBuffer<int, 3> buffer { };
	std::vector<int> frontValues { }, expectedValues { 1, 1, 2, 2, 2, 3, 4, 4, 5, 5, 5, 6, 7 };
	buffer.push(1);
	frontValues.push_back(buffer.front());
	buffer.push(2);
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	buffer.push(3);
	frontValues.push_back(buffer.front());
	buffer.push(4);
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	buffer.push(5);
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	buffer.push(6);
	frontValues.push_back(buffer.front());
	buffer.push(7);
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	ASSERT_EQUAL(expectedValues, frontValues);
}
开发者ID:paddor,项目名称:cpp-advanced-exercises,代码行数:31,代码来源:bounded_buffer_content_suite.cpp

示例5: test_buffer_fronts_in_sequence_of_push_pop

void test_buffer_fronts_in_sequence_of_push_pop() {
	BoundedBuffer<int> buffer { 5 };
	std::vector<int> frontValues { }, expectedValues { 1, 1, 1, 2, 2, 3, 4, 4, 5 };
	buffer.push(1);
	frontValues.push_back(buffer.front());
	buffer.push(2);
	frontValues.push_back(buffer.front());
	buffer.push(3);
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	buffer.push(4);
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	buffer.push(5);
	frontValues.push_back(buffer.front());
	buffer.pop();
	frontValues.push_back(buffer.front());
	ASSERT_EQUAL(expectedValues, frontValues);
}
开发者ID:paddor,项目名称:cpp-advanced-exercises,代码行数:23,代码来源:bounded_buffer_content_suite.cpp

示例6: test_buffer_front_throws_after_push_pop

void test_buffer_front_throws_after_push_pop() {
	BoundedBuffer<int> buffer { 5 };
	buffer.push(5);
	buffer.pop();
	ASSERT_THROWS(buffer.front(), std::logic_error);
}
开发者ID:paddor,项目名称:cpp-advanced-exercises,代码行数:6,代码来源:bounded_buffer_content_suite.cpp

示例7: test_buffer_is_empty_after_one_push_and_pop

void test_buffer_is_empty_after_one_push_and_pop() {
	BoundedBuffer<int> buffer { 5 };
	buffer.push(5);
	buffer.pop();
	ASSERTM("Buffer should be empty after one push and pop", buffer.empty());
}
开发者ID:paddor,项目名称:cpp-advanced-exercises,代码行数:6,代码来源:bounded_buffer_content_suite.cpp

示例8: test_buffer_back_throws_after_push_pop

void test_buffer_back_throws_after_push_pop() {
	BoundedBuffer<int, 5> buffer { };
	buffer.push(5);
	buffer.pop();
	ASSERT_THROWS(buffer.back(), std::logic_error);
}
开发者ID:paddor,项目名称:cpp-advanced-exercises,代码行数:6,代码来源:bounded_buffer_content_suite.cpp


注:本文中的BoundedBuffer::pop方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。