STL测试

简介: STL测试
array arr{ 1,2,3 }, arr1{4,5,6};
arr.begin();
arr.end();
arr.rbegin();
arr.rend();
arr.cbegin();
arr.cend();
arr.size();
arr.front();
arr.back();
int data = std::get<2>(arr);
arr.empty();
//arr.assign(10);
arr.at(1);
arr.data(); // 能够获得内部数组的首地址
arr.fill(10);
arr.swap(arr1);
vector<int> vec{ 1, 2, 3 }, vec1{4, 5, 6};
vec.begin();
vec.end();
vec.rbegin();
vec.rend();
vec.cbegin();
vec.cend();
vec.size();
vec.capacity();
vec.empty();
vec.reserve(100);
vec.empty();
vec.at(0);
vec.reserve(10);
vec.resize(20);
replace(vec.begin(), vec.end(), 1, 10);
vec.assign(10, 0);
vec.assign(vec1.begin(), vec1.end());
vec.clear();
deque<int> deq{ 1,2,3 };
deque<int> deq1{ 1,2,3 };
deq.begin();
deq.cbegin();
deq.rbegin();
deq.front();
deq.push_back(5);
deq.push_front(6);
deq.pop_back();
deq.pop_front();
deq.emplace_back(7);
deq.emplace_front(8);
deq.swap(deq1);
/* list list1{ 1,2,3 };
list list2{ 4,5,6 };
list1.merge(list2);
list1.insert(list1.end(), 4);
list1.erase(list1.end();
list1.remove(list1.size() - 1); */
string str = "1233121";
string str2("asd");
const char* str3 = "aaa";
str.find_first_not_of("2");
str.find_first_of("2");
str.find_last_of("2");
str.find_last_not_of("1");
str.append("5");
str.assign("1");
str.begin();
str.end();
str.cbegin();
str.cend();
str.compare(str2);
str.capacity();
str2.copy(const_cast<char*>(str3), 0, 1);
str.swap(str2);
str.c_str();
str.data();
str.front();
str.length();
str.empty();
//str.replace(str.begin(), str.begin() + 4, "3");
//str.replace(0, 5, str2);
str.clear();
stack<int> sta,sta1;
sta.push(1);
sta1.push(2);
sta.empty();
sta.size();
sta.top();
sta.swap(sta1);
sta.pop();
queue<int> que,que1;
que.push(1);
que1.push(2);
que.front();
que.back();
que.empty();
que.size();
que.swap(que1);
que.pop();
set<int> set1{ -1, 1, 1, 2, 3 }, set2{4,5,6};
set1.begin();
set1.end();
set1.cbegin();
set1.cend();
set1.rbegin();
set1.rend();
set1.crbegin();
set1.crend();
set1.emplace(12);   // emplace: 使用直接构造
set1.insert(13);   // insert : 拷贝对象到set,复制构造。
set1.empty();
// cout << *(set1.equal_range(3.5)).first << "   " << *(set1.equal_range(3.5)).second << endl;
set1.erase(set1.begin());
cout << *(set1.find(2)) << endl;
set1.size();
set1.swap(set2);
int a[] = { 1,1,-1,3,3,4,5 };
cout << *(lower_bound(a, a + 5, 2)) << endl;  // lower_bound返回值是一个迭代器,二分查找第一个小于或等于2的数字,找到返回该数字的地址
cout << *(upper_bound(a, a + 5, 2)) << endl;  // 二分查找第一个小于num的数字,找到返回该数字的地址
map<int, string> map1;
pair<int, string> pair1(1,"1");      // 这个类把一对值(values)结合在一起,这些值可能是不同的类型(T1 和 T2)
cout << pair1.first << pair1.second << endl;
count(set1.begin(), set1.end(), 1);
count_if(set1.begin(), set1.end(), isLarge); // 统计有多少个元素满足 unaryPred
all_of(set1.begin(), set1.end(), isLarge);  // 返回一个 bool 值,判断是否所有元素都满足 unaryPred
any_of(set1.begin(), set1.end(), isLarge);  // 返回一个 bool 值,判断是否任意(存在)一个元素满足 unaryPred
adjacent_find(set1.begin(), set1.end());
search_n(set1.begin(), set1.end(), 10, 1);  // 返回一个迭代器,从此位置开始有10个相等元素1,不存在则返回 end
search(set1.begin(), set1.end(), set2.begin(), ++set2.begin());  
find_first_of(set1.begin(), set1.end(), set2.begin(), set2.end()); // 返回一个迭代器,指向第二个输入范围中任意元素在第一个范围中首次出现的位置,未找到则返回end1
find_end(set1.begin(), set1.end(), set2.begin(), set2.end()); // 类似 search,但返回的最后一次出现的位置。如果第二个输入范围为空,或者在第一个输入范围为空,或者在第一个输入范围中未找到它,则返回 end1
for_each(set1.begin(), set1.end(), isLarge);
mismatch(set1.begin(), set1.end(), set2.begin()); // 比较两个序列中的元素。返回一个迭代器的 pair,表示两个序列中第一个不匹配的元素
equal(set1.begin(), set1.end(), set2.begin());
lower_bound(set1.begin(), set1.end(), 2);  // 返回一个非递减序列 [beg, end) 中的第一个大于等于值 val 的位置的迭代器
upper_bound(set1.begin(), set1.end(), 2);  // 返回一个非递减序列 [beg, end) 中第一个大于 val 的位置的迭代器,不存在则返回 end
equal_range(set1.begin(), set1.end(), set2.begin(), set2.end());
binary_search(set1.begin(), set1.end(), 2);
fill(set1.begin(), set1.end(), 2); // 将 val 赋予每个元素,返回 void
copy(set1.begin(), set1.end(), set1.begin());
copy_if(set1.begin(), set1.end(), set2.begin(), isLarge);
copy_n(set1.begin(), 10, set2.begin());
move(set1.begin(), set1.end(), set2.begin()); // 对输入序列中的每个元素调用 std::move,将其移动到迭代器 dest 开始始的序列中
transform(set1.begin(), set1.end(), set2.begin(), isLarge); // 调用给定操作(一元操作),并将结果写到dest中
replace_copy(set1.begin(), set1.end(), set2.begin(),1,2);  // 两个输入序列必须都是有序的,用 < 运算符将合并后的序列写入到 set2 中
merge(set1.begin(), set1.end(), set2.begin(), set2.end(),set1.begin());  // 将set1和set2合并后拷贝到set1中
iter_swap(set1.begin(), ++set1.begin());
replace(set1.begin(), set1.end(), 1, 2);            // 将set1中1替换成2
copy_backward(set1.begin(), set1.end(), set2.begin());   // 将set1拷贝到set2中
move_backward(set1.begin(), set1.end(), set2.begin());
sort(set1.begin(), set1.end());
stable_sort(set1.begin(), set1.end());              // 稳定排序
is_sorted(set1.begin(), set1.end());                // 返回一个bool值,指出整个输入序列是否有序。
unique(set1.begin(), set1.end());              // 通过对覆盖相邻的重复元素(用 == 确定是否相同)实现重排序列。返回一个迭代器,指向不重复元素的尾后位置
min(set1.begin(), set1.end());
max(set1.begin(), set1.end());
minmax(set1.begin(), set1.end());            // 返回一个 pair,其 first 成员为提供的值中的较小者,second 成员为较大者。
min_element(set1.begin(), set1.end());        // 返回指向输入序列中最小元素的迭代器
max_element(set1.begin(), set1.end());       // 返回指向输入序列中最大元素的迭代器
相关文章
|
存储 算法 安全
初阶C++——STL——string类、vector类和list类(使用方法+模拟实现+测试+思路分析)
Alexander Stepanov、Meng Lee 在惠普实验室完成的原始版本,本着开源精神,他们声明允许任何人任意运用、拷贝、修改、传播、商业使用这些代码,无需付费。唯一的条件就是也需要向原始版本一样做开源使用。 HP 版本--所有STL实现版本的始祖。
403 0
初阶C++——STL——string类、vector类和list类(使用方法+模拟实现+测试+思路分析)
|
2月前
|
数据可视化 前端开发 测试技术
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
|
1月前
|
JSON 前端开发 测试技术
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
98 10
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
|
1月前
|
JSON 前端开发 API
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
64 5
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
|
8天前
|
存储 JSON API
Python测试淘宝店铺所有商品接口的详细指南
本文详细介绍如何使用Python测试淘宝店铺商品接口,涵盖环境搭建、API接入、签名生成、请求发送、数据解析与存储、异常处理等步骤。通过具体代码示例,帮助开发者轻松获取和分析淘宝店铺商品数据,适用于电商运营、市场分析等场景。遵守法规、注意调用频率限制及数据安全,确保应用的稳定性和合法性。
|
2天前
|
监控 API 开发工具
Socket.IO介绍,以及怎么连接测试Socket.IO接口?
Socket.IO 是一个用于浏览器和服务器间实时双向通信的库,支持低延迟消息传递、跨平台运行及自动重连。文章介绍了其特点与调试需求,并详细说明如何使用 Apifox 工具创建、连接、发送/接收 Socket.IO 事件,以及团队协作和调试技巧。掌握这些技能可提升实时应用开发效率与质量。
|
21天前
|
小程序 测试技术 数据安全/隐私保护
微信公众号接口测试实战指南
微信公众号接口测试是确保系统稳定性和功能完整性的重要环节。本文详细介绍了测试全流程,包括准备、工具选择(如Postman、JMeter)、用例设计与执行,以及常见问题的解决方法。通过全面测试,可以提前发现潜在问题,优化用户体验,确保公众号上线后稳定运行。内容涵盖基础接口、高级接口、微信支付和数据统计接口的测试,强调了功能验证、性能优化、安全保护及用户体验的重要性。未来,随着微信生态的发展,接口测试将面临更多挑战和机遇,如小程序融合、AI应用和国际化拓展。
|
2月前
|
存储 测试技术 数据库
接口测试工具攻略:轻松掌握测试技巧
在互联网快速发展的今天,软件系统的复杂性不断增加,接口测试工具成为确保系统稳定性的关键。它如同“翻译官”,模拟请求、解析响应、验证结果、测试性能并支持自动化测试,确保不同系统间信息传递的准确性和完整性。通过Apifox等工具,设计和执行测试用例更加便捷高效。接口测试是保障系统稳定运行的第一道防线。
|
2月前
|
Web App开发 JSON 测试技术
API测试工具集合:让接口测试更简单高效
在当今软件开发领域,接口测试工具如Postman、Apifox、Swagger等成为确保API正确性、性能和可靠性的关键。Postman全球闻名但高级功能需付费,Apifox则集成了API文档、调试、Mock与自动化测试,简化工作流并提高团队协作效率,特别适合国内用户。Swagger自动生成文档,YApi开源但功能逐渐落后,Insomnia界面简洁却缺乏团队协作支持,Paw仅限Mac系统。综合来看,Apifox是国内用户的理想选择,提供中文界面和免费高效的功能。
|
3月前
|
监控 JavaScript 测试技术
postman接口测试工具详解
Postman是一个功能强大且易于使用的API测试工具。通过详细的介绍和实际示例,本文展示了Postman在API测试中的各种应用。无论是简单的请求发送,还是复杂的自动化测试和持续集成,Postman都提供了丰富的功能来满足用户的需求。希望本文能帮助您更好地理解和使用Postman,提高API测试的效率和质量。
185 11

热门文章

最新文章