上一页 1 ··· 20 21 22 23 24 25 26 27 28 ··· 52 下一页
摘要: set集合是c++ stl库中自带的一个容器,set具有以下两个特点: 1、set中的元素都是排好序的 2、set集合中没有重复的元素 常用操作: begin() 返回set容器的第一个元素的地址 end() 返回set容器的最后一个元素地址 clear() 删除set容器中的所有的元素 empty 阅读全文
posted @ 2020-05-12 15:28 卖雨伞的小男孩 阅读(2427) 评论(0) 推荐(0)
摘要: begin() 返回指向map头部的迭代器 clear() 删除所有元素 count() 返回指定元素出现的次数 empty() 如果map为空则返回true end() 返回指向map末尾的迭代器 equal_range() 返回特殊条目的迭代器对 erase() 删除一个元素 find() 查找 阅读全文
posted @ 2020-05-12 15:25 卖雨伞的小男孩 阅读(403) 评论(0) 推荐(0)
摘要: map和set都是C++的关联容器,其底层实现都是红黑树(RB-Tree)。由于 map 和set所开放的各种操作接口,RB-tree 也都提供了,所以几乎所有的 map 和set的操作行为,都只是转调 RB-tree 的操作行为。 map和set区别在于: (1)map中的元素是key-value 阅读全文
posted @ 2020-05-12 14:21 卖雨伞的小男孩 阅读(3271) 评论(0) 推荐(0)
摘要: 在C++中,声明自定义的类型之后,编译器会默认生成一些成员函数,这些函数被称为默认函数。其中包括 (1)(默认)构造函数 (2)拷贝(复制)构造函数 (3)拷贝(复制)赋值运算符 (4)移动构造函数 (5)移动赋值运算符 (6)析构函数 另外,编译器还会默认生成一些操作符函数,包括 (7)opera 阅读全文
posted @ 2020-05-12 14:17 卖雨伞的小男孩 阅读(633) 评论(0) 推荐(0)
摘要: 1、strcpy原型实现 char * my_strcpy(char *des,const char *src) { assert((des != nullptr) && (src != nullptr)); char *address = des; while (*src != '\0') { * 阅读全文
posted @ 2020-05-12 14:01 卖雨伞的小男孩 阅读(261) 评论(0) 推荐(0)
摘要: 其实对于 std::move来说,只做了一件事。可以初步的理解为 (不过当然是错误的) template<typename T>T&& move(T& val){ return static_cast<T&&>(val);}move 只是纯粹的将一个左值转化为了一个右值,STL实现基本都已经实现了移 阅读全文
posted @ 2020-05-11 18:05 卖雨伞的小男孩 阅读(337) 评论(0) 推荐(0)
摘要: 类继承关系图 注:从图中可以看出,派生类不仅有自己的方法和属性,同时它还包括从父类继承来的方法和属性。当我们从派生类向基类转换时,不管用传统的c语言还是c++转换方式都可以百分百转换成功。但是可怕是向下转换类型,也就是我们从基类向派生类转换,当我们采用传统的C语言和c++转换时,就会出现意想不到的情 阅读全文
posted @ 2020-05-11 17:56 卖雨伞的小男孩 阅读(443) 评论(0) 推荐(0)
摘要: 右值引用若不作为函数参数使用,基本等于滥用 右值引用 (Rvalue Referene) 是 C++ 新标准 中引入的新特性 , 它实现了移动语义 (Move Sementics) 和完美转发 (Perfect Forwarding)。它的主要目的有两个方面: 1. 消除两个对象交互时不必要的对象拷 阅读全文
posted @ 2020-05-11 17:42 卖雨伞的小男孩 阅读(631) 评论(0) 推荐(0)
摘要: C++中有一个重要特性,那就是模板类型。类似于Objective-C中的泛型。C++通过类模板来实现泛型支持。 1 基础的类模板 类模板,可以定义相同的操作,拥有不同数据类型的成员属性。 通常使用template来声明。告诉编译器,碰到T不要报错,表示一种泛型. 如下,声明一个普通的类模板: tem 阅读全文
posted @ 2020-05-11 10:33 卖雨伞的小男孩 阅读(413) 评论(0) 推荐(0)
摘要: 答:在实现多态时,当用基类操作派生类,在析构时防止只析构基类而不析构派生类的状况发生。 代码说明如下 第一段代码: 1 #include<iostream> 2 using namespace std; 3 4 class ClxBase 5 {public: 6 ClxBase() {} 7 ~C 阅读全文
posted @ 2020-05-09 17:39 卖雨伞的小男孩 阅读(810) 评论(0) 推荐(0)
上一页 1 ··· 20 21 22 23 24 25 26 27 28 ··· 52 下一页