Posts
秘秘秘秘秘密
Cancel

1. 静态库 编译静态库 创建库工程 static 为静态库 shared为动态库 编译静态库 Build -> Build project 编译成功后cmake-build-debug下回出现 xxx.a的库文件 封装 一般的习惯,将头文件放到include 中, 将生成文件放至libs中 ...

1. 左值与右A值 从汇编角度来讲 左值是有实际内存存储地址的值, 而右值是寄存器里的值(简单理解)。 从面向对象来讲 当一个对象被用作右值的时候,用的是对象的值(内容)。 当一个对象被用作左值的时候,用的是对象身份(在内存中的位置)。 使用关键字decltype时, 左值与右值是不同的。 这个留坑。 ...

每次在服务器上配置mysql开启远程服务都有问题,这次写下来下次按照这个来配置吧。 1. 安装mysql #更新apt-get库 sudo apt-get update #安装mysql sudo apt-get install mysql-server 2. 初始化配置 sudo mysql_secure_installation #有很多配置项,按照需求选择,建议 #...

41. 了解隐式接口和编译器多态 对于类而言: 显式接口 运行时多态 对于模板而言: 隐式接口 编译时多态 1.编译时期多态与运行时期多态: 编译时期多态,类似于函数重载,哪一个重载函数被调用。 运行时期多态, 哪一个虚函数被绑定。 2. 显示接口 与 隐式接口 显示接口: 通常显式接口有函数的签名(也就是函数名称、参数类...

33. 避免遮盖继承而来的名称 1. 先导知识 int x = 15; int main() { double x = 1.5; int y = x; cout << y << endl; } main 函数范围内的 x命名会覆盖掉 globle 的全局 x。 无论其类型。 2. 再来看一个示例 首先说明一点,对于Base 的虚...

26. 尽可能的延后变量定义出现的时间 一点说明: Person p("xx",13); // 构造函数 Person p2("zz",13); // 构造函数 Person p4(p); // 拷贝构造 Person p3 = p2; // 拷贝构造 这个很奇怪 p2 = p; // 赋值构造 尽可能使用: // 良好的习惯 Object o(o2); Object...

20.宁以pass-by-reference-to-const 替换 pass-by-value pass-by-reference-to-const 的好处 pass-by-value 会造成多次的无必要的析构,拷贝构造。 继承中的多态问题,只有指针与引用可以多态使用。 class Person { public: ...

1. 下载对应版本的frp 先下载对应版本的frp,frp包含客户端与服务器端 地址 解压: tar -zxvf xxx 2. 服务器端部署(公网) 打开配置文件 vi frps.ini 修改配置文件内容 [common] # frp监听的端口,默认是7000,可以改成其他的 bind_port = 7000 # 授权码...

1. 源码组织结构 event.h 主要结构体event的声明 xxx-internal.h 内部数据结构,对外不可见 event.c libevent框架爱,event整体框架的代码实现 对系统IO多路复用机制的封装 epoll.c select....

13. 以对象管理资源 申请一块动态内存后,可能会发生泄露,其原因无非以下几点: 忘记delete 有delete,但是提前returnle 抛出异常了 所以,最好的解决方法就是,使用对象来管理资源,包括下列两个关键性的想法: 获得资源后立刻放进管理对象 管理对象运用的对象确保资源会被...

Trending Tags