随笔分类 -  C++

摘要:#include <iostream> #include <vector> #include <string> #include <map> #include <algorithm> using namespace std; // map按照value排序 // 按照单词出现个数排序 // 因为so 阅读全文
posted @ 2020-04-19 21:09 Lucky& 阅读(1418) 评论(0) 推荐(0) 编辑
摘要:课后答案笔试题常见 一、请填写 BOOL , float, 指针变量 与“零值”比较的 if 语句。 1.请写出 BOOL flag 与“零值”比较的 if 语句 if ( flag ) if ( !flag 2.请写出 float x 与“零值”比较的 if 语句 const float EPSI 阅读全文
posted @ 2020-04-17 11:17 Lucky& 阅读(754) 评论(0) 推荐(0) 编辑
摘要:林锐C/C++高质量编程指南之二 只是记了一部分我认为比较难理解的,或常用的,部分掌握的就没有写。 第七章内存管理 【规则 7-2-1】用 malloc 或 new 申请内存之后,应该立即检查指针值是否为 NULL。 防止使用指针值为 NULL 的内存。 【规则 7-2-2】不要忘记为数组和动态内存 阅读全文
posted @ 2020-04-17 10:53 Lucky& 阅读(646) 评论(0) 推荐(0) 编辑
摘要:C/C++高质量编程指南之一 第一章:文件结构 1 在文件开头加上版本信息。 【规则 1-2-1】为了防止头文件被重复引用,应当用 ifndef/define/endif 结构产生预处理块 【规则 1-2-2】用 #include <filename.h> 格式来引用标准库的头文件(编译器将从 标准 阅读全文
posted @ 2020-04-16 16:07 Lucky& 阅读(1341) 评论(0) 推荐(0) 编辑
摘要:一个类的指针对象,如果分配空间的话,就会调用构造函数,在析构时要手动调用delete 如果没有分配就,不会调用。 还有就是,对象析构的顺序是先析构下面的在析构上面的 A a; B b; 就会先析构b,在析构a 看看下面的例子 // // Created by LK on 2020/3/31. // 阅读全文
posted @ 2020-04-01 21:26 Lucky& 阅读(3290) 评论(0) 推荐(0) 编辑
摘要:两种方法 一:使用set 二:使用sort+unique 就是:先排序,然后用unique把重复的数字都放在后面,再用erase删除 // // Created by LK on 2020/3/31. // #include <iostream> #include <vector> #include 阅读全文
posted @ 2020-03-31 11:25 Lucky& 阅读(4368) 评论(0) 推荐(0) 编辑
摘要:随机洗牌算法就是让一组数据随机出现。 #include <iostream> #include <vector> #include <ctime> #include <cstdio> using namespace std; // 随机洗牌算法 void shuffle(vector<int>& v 阅读全文
posted @ 2020-03-31 10:50 Lucky& 阅读(2037) 评论(0) 推荐(0) 编辑
摘要:用map统计字符串中每个字符出现的次数 #include <iostream> #include <vector> #include <string> #include <map> #include <algorithm> using namespace std; // map统计字符出现的次数 i 阅读全文
posted @ 2020-03-29 16:09 Lucky& 阅读(761) 评论(0) 推荐(0) 编辑
摘要:各种数据类型和0比较 1.bool类型和0比较 不可将布尔变量直接与TRUE、FALSE或者1、0进行比较。 假设布尔变量名字为flag,它与零值比较的标 准if语句如下: if (flag) // 表示flag为真 if (!flag) // 表示flag为假 其他为不良写法。 2、 整型变量与零 阅读全文
posted @ 2020-03-28 22:11 Lucky& 阅读(2134) 评论(0) 推荐(0) 编辑
摘要:补充一下C++11新特性,被问到了 来源于:https://www.cnblogs.com/skyfsm/p/9038814.html 1,nullptr nullptr 出现的目的是为了替代 NULL(某些编译器把NULL定义为0)。 专门用来区分空指针、0 nullptr 的类型为 nullpt 阅读全文
posted @ 2020-03-28 21:57 Lucky& 阅读(418) 评论(0) 推荐(0) 编辑
摘要:这个是在一次面试时候问的,删除vector中的一个指定元素 // 刚开始是这样的,删除vector中的一个等于target的元素,我一想不就是这个,多简单,上手就是写个这。结果,我艹直接死循环(一脸尴尬,多么简单的题)。然后调了一会,没调出来(我是忽略了erase的返回值了,erase返回删除当前元 阅读全文
posted @ 2020-03-27 22:19 Lucky& 阅读(1261) 评论(0) 推荐(0) 编辑
摘要:这个问题也是困扰了我很久的一个问题: 为了加快数据存取的速度,编译器默认情况下会对结构体成员和结构体本身存储位置进行处理,使其存放的起始地址是一定字节数的倍数,而不是顺序存放,称为字节对齐. 设对齐字节数为n(n = 1,2,4,8,16),每个成员内存长度为Li,Max(Li)为最大的成员内存长度 阅读全文
posted @ 2020-03-14 10:14 Lucky& 阅读(2690) 评论(1) 推荐(0) 编辑
摘要:红黑树常见问题 1 stl中的set和set底层用的什么数据结构? 红黑树 2 红黑树的数据结构 1 enum Color 2. { 3. RED = 0, 4. BLACK = 1 5. }; 6. 7. struct RBTreeNode 8. { 9. struct RBTreeNode*le 阅读全文
posted @ 2020-03-11 11:16 Lucky& 阅读(2110) 评论(0) 推荐(0) 编辑
摘要:STL相关的面试题 了解STL吗? 0:STL常用的容器有哪些以及各自的特点是什么? 1.vector:底层数据结构为数组 ,支持快速随机访问。 2.list:底层数据结构为双向链表,支持快速增删。 3.deque:底层数据结构为一个中央控制器和多个缓冲区,支持首尾(中间不能)快速增删,也支持随机访 阅读全文
posted @ 2020-03-11 10:20 Lucky& 阅读(4571) 评论(0) 推荐(1) 编辑
摘要:1.static类成员 C++primer里面说过,static类成员不像普通的类数据成员,static类数据成员独立于一切类对象处在。static类数据成员是与类关联的, 但不与该类定义的对象有任何关系。即static不会像普通类数据成员一样每一个类对象都有一份,全部类对象是共享一个static类 阅读全文
posted @ 2020-03-10 08:13 Lucky& 阅读(3528) 评论(0) 推荐(2) 编辑
摘要:语言基础类 0.各种类型和0值比较 bool类型和0值比较 假设有bool类型的flag if (flag) // 表示flag为真 if (!flag) // 表示flag为假 整型和0值比较 假设整型变量value if (value == 0) if(value != 0) 浮点型和0值比较 阅读全文
posted @ 2020-03-08 07:53 Lucky& 阅读(2622) 评论(2) 推荐(1) 编辑
摘要:目录 按位与运算符(&) 参加运算的两个数据,按二进制位进行“与”运算。 运算规则:0&0=0; 0&1=0; 1&0=0; 1&1=1; 即:两位同时为“1”,结果才为“1”,否则为0 例如:3&5 即 0000 0011& 0000 0101 = 00000001 因此,3&5的值得1。 另,负 阅读全文
posted @ 2020-03-07 08:39 Lucky& 阅读(27046) 评论(3) 推荐(4) 编辑
摘要:在进行单链表的基本运算之前必须先建立单链表,建立单链表的常用方法有两种:头插法建表和尾插法建表 头插法建表,从一个空表开始,读取字符数组a中的字符,生成新节点,将读取的数据存放到新节点的数据域中,然后将新节点插入到当前链表的表头上,直到读完字符数组a的所有元素为止。 核心代码: s->next = 阅读全文
posted @ 2020-03-04 15:42 Lucky& 阅读(11982) 评论(0) 推荐(1) 编辑
摘要:c语言常见的字符串处理函数 strlen()函数 1函数原型: size_t strlen( const char *string ); 2,函数功能:计算指定的字符串string的长度。 3,strlen函数实现: #include <stdio.h> int my_strlen1(const c 阅读全文
posted @ 2020-03-02 17:36 Lucky& 阅读(1449) 评论(0) 推荐(0) 编辑
摘要:多态是由虚函数实现的,而虚函数主要是通过虚函数表(V-Table)来实现的。 如果一个类中包含虚函数(virtual修饰的函数),那么这个类就会包含一张虚函数表,虚函数表存储的每一项是一个虚函数的地址。如下图: 这个类的每一个对象都会包含一个虚指针(虚指针存在于对象实例地址的最前面,保证虚函数表有最 阅读全文
posted @ 2020-03-02 11:08 Lucky& 阅读(4076) 评论(0) 推荐(2) 编辑

//返回顶部开始
//返回顶部结束