摘要: 模板方法模式 父类写一些抽象方法,子类来实现他们 示例 这里我们希望实现一个打印的功能。预计是设计两个类,一个用来打印字符,另一个用来打印字符串。 抽象了一个基类设计打印的一些细节,把整个打印流程总结成了3个部分,open, print和close open() 负责打印一些初始东西 print() 阅读全文
posted @ 2022-08-14 20:37 Destiny233 阅读(48) 评论(0) 推荐(0)
摘要: MySQL基本介绍 MySQL登录 mysql -uroot -p123456 显示输入密码 mysql -uroot -p 不显示密码 MySQL常用命令 show databases; 显示所有的数据库 create database xxxx; 创建xxxx数据库 use xxx 使用xxx数 阅读全文
posted @ 2022-08-14 11:09 Destiny233 阅读(51) 评论(0) 推荐(0)
摘要: 迭代器模式 Iterator 迭代器接口 public interface Iterator{ boolean hasNext(); // 是否有下一个元素 Object next(); // 返回下一个元素 } Aggregate 集合接口 // 集合接口 public interface Agg 阅读全文
posted @ 2022-08-13 15:22 Destiny233 阅读(64) 评论(0) 推荐(0)
摘要: 这一期主要讲一些工具和库,感觉不是很重要,随便看看就行 编译器 MSVC Clang GCC 格式化工具:clang-format 代码检查工具:clang-tidy 排错工具:Valgrind、nvwa::debug_new,这俩可以检测内存泄露 处理数据类型变化和错误 optional opti 阅读全文
posted @ 2022-08-12 15:34 Destiny233 阅读(86) 评论(0) 推荐(0)
摘要: 这里只总结具体用法,至于redis的输出需要自己在redis-cli中试一下。 Redis中的数据结构 有以下5个基础数据结构 string 字符串 list 链表 hash 哈希表 set 集合 zset 有序集合 还有几个新的数据结构,感觉不是很常用? hyperloglog 位图 地理位置? 阅读全文
posted @ 2022-08-11 23:49 Destiny233 阅读(44) 评论(0) 推荐(0)
摘要: 函数对象 c++98中的函数对象:重载()运算符 struct Add { Add(int n): n_(n){} int operator()(x) const { return x + n_; } private: int n_; } Lambda表达式 auto add_2 = [](int 阅读全文
posted @ 2022-08-10 19:54 Destiny233 阅读(66) 评论(0) 推荐(0)
摘要: Unicode ASCII:美国信息交换标准代码 Windows扩展以及各种乱七八糟的扩展:ISO-xxx等 Unicode 0x0~0x10FFFF一共 UTF-32:编码直接映射 UTF-16: UTF-8:1~4个字节变长 C++对Unicode的支持 c++11引入了char16_t cha 阅读全文
posted @ 2022-08-09 19:38 Destiny233 阅读(110) 评论(0) 推荐(0)
摘要: 第一讲,一条SQL查询语句是如何执行的 select * from T where ID=10 MySQL可以分成Server层和存储引擎两个部分 Server层 引擎层:InnoDB,MyISAM,Memory 连接器:负责与客户端建立连接 查询缓存:如果某个语句查过了,就直接返回(不建议使用) 阅读全文
posted @ 2022-08-08 22:00 Destiny233 阅读(71) 评论(0) 推荐(0)
摘要: 异常 异常安全:当发生异常时,没有资源泄露,系统也不会处于不一致状态 如果不知道是否使用异常,那就是该用。 直接throw会导致内存泄漏,才会使用try catch 在大部分情况下,提供了强异常保证 迭代器 迭代器不是一种类型,而是一种类型要求。 迭代器要求支持*,++,==,!=运算符 输入迭代器 阅读全文
posted @ 2022-08-07 15:08 Destiny233 阅读(95) 评论(0) 推荐(0)
摘要: 堆、栈和RAII 这一讲主要说的是内存管理。C++中主要的内存管理有 栈上内存交给编译器管理 堆上内存需要用户自己管理 栈上内存分配很简单,移动几个指针就行了。 RAII 以下几种情况,就不能使用栈上的空间的了,必须用户自己管理内存。 对象很大 对象在编译时候不确定 对象的生命周期超过了函数 RAI 阅读全文
posted @ 2022-08-06 16:25 Destiny233 阅读(249) 评论(0) 推荐(0)