![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
_Dre
为什么想要坚持最后却选择放弃
展开
-
几种排序算法的实现和比较
冒泡排序稳定性: 稳定 最坏时间复杂度O(N^2) 最好时间复杂度O(N) 平均时间复杂度O(N^2)void bubble_sort(int *a, int n){ for(int i = 0; i < n; ++i) { int flag = false; for(int j = n - 2; j >= 0; --j) {原创 2017-02-28 19:35:48 · 341 阅读 · 0 评论 -
gtest简单原理学习
gtest框架原理的简单实现如下://测试案例,里面可能包含很多项不同的测试class TestCase{public: TestCase(const char* name) :_testCaseName(name) {}; virtual void run() = 0; int _testResult; //当测试案例不全通过时,此项值为0 const原创 2017-06-13 18:23:00 · 3481 阅读 · 0 评论 -
gtest各项参数
1、测试部分1、–gtest_list_tests 列出所有测试的名字而不是运行它们,例如TEST(fun, add)输出就是fun.add2、–gtest_filter=[positive patterns] 过滤作用,仅仅运行那些名字匹配positive patterns的测试,类似于正则表达式,?匹配任意字符,*匹配任意子串,:分隔两个pattern3、–gtest_also_run_di原创 2017-06-13 12:24:03 · 5928 阅读 · 0 评论 -
gtest配置过程
1、配置前准备:电脑环境:Windows7 旗舰版 gtest代码:https://github.com/google/googletest IDE:visual studio 2015专业版2、下载源代码:昨天学习了git刚好可以用上:git学习笔记 直接通过git clone下载源代码带本地电脑3、进入googletest源代码目录如下:4、打开通过vs打开sln文件一共4个project原创 2017-06-13 11:20:26 · 1455 阅读 · 0 评论 -
git学习笔记
(1) 谈谈你对Git作用的理解,类似的系统有哪些?Git分布式版本控制系统,最大的好处是适合team开发项目,进行代码开发、版本的管理,当多人进行合作开发时,通过git可以clone项目仓库到本地自己的电脑,本地仓库又可以创建多个分支进行不同方向的修改和开发,分支之间互不影响,并且在合适的时机可以合并到一起,再push回远程的项目仓库,team的成员可以灵活的开发自己的任务而不必过多的考虑其他成员原创 2017-06-12 16:23:03 · 361 阅读 · 0 评论 -
std::istream&初始化的问题
今天在项目中遇到一个小问题,记录一下,就是如何在初始化一个在类中的流引用,但是我需要我的构造函数不能传入一个流,因为我的构造函数不一定全部是需要传入流这个参数的, 示例如下:这是传统的方法,但是有时候我并不需要在构造函数传入一个流,哪该如何解决这个问题class Test{public: Test(int a, std::istream& s) : _myStream(s), _a(a原创 2017-06-23 12:50:41 · 5207 阅读 · 0 评论 -
STL中的迭代器学习
迭代器什么是迭代器?就是提供一种方法访问容器,而不暴露容器内部的结构,方便使用者访问存取数据,由于STL采用泛型编程,迭代器又是容器和算法相结合的胶水,算法通过迭代器获取容器内部数据进行运算、排序等等,算法和容器不必知道对方结构。迭代器的类型五种迭代器类型,分别为只读迭代器、只写迭代器、前向迭代器、双向迭代器、随机访问迭代器 //定义五种迭代器类型 struct input_itera原创 2017-02-27 14:20:41 · 249 阅读 · 0 评论 -
STL中的traits编程技法
traits介绍traits编程技法确实是神技,我看了好几遍,确实难以理解;并利用模板类特化和偏特化的能力,给类型赋予一些特性,这些特性根据类型的不同而异,类似于重装函数一样的特性。在STL中就巧妙的使用这种方法,提升效率,让内置的类型在析构时不必调用析构函数, STL部分源码如下//判断区间元素里是否有没有必要调用对象的析构函数template <class _ForwardIterator,原创 2017-02-27 13:42:07 · 590 阅读 · 0 评论 -
空间配置器allocator
1、 什么是空间配置器在我看来就是STL容器后面默默工作进行内存管理和分配以及回收的的一个组件,为什么不叫内存配置器?STL源码剖析里说到: 因为空间不一定是内存,空间也可以是磁盘或其他辅助的存储介质。2、空间配置器的标准接口有哪些allocator::value_typeallocator::pointorallocator::const_pointerallocator::refe原创 2017-02-27 13:01:17 · 292 阅读 · 0 评论 -
OPC--open packaging convention学习
1、什么是OPC 我的理解是,OPC是一种开放的打包约定、一种类似于文件归档、打包压缩的格式,可以接受通用的zip进行打开,很多文件都是使用OPC进行打包,例如微软的docx、pptx;从使用的角度来说,docx文件就单单是一个独立的文件,但是从开发的角度来说,这个文件是由多个xml标记的数据文件和文档内容、以及嵌入的的图片、音乐和其他格式的文件组成,所以OPC就对如何打包这些文件进行了一些规原创 2017-06-14 16:33:11 · 1504 阅读 · 0 评论