摘要: find . type f exec cmd {} \; 阅读全文
posted @ 2019-11-13 16:40 SnailRush 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 我们编译可执行文件的时候,会链接各种依赖库, 但是怎么知道依赖库的版本正确呢? 下面有几种办法: ldd 这是比较差的, 只能找到目标文件的依赖 dpkg -l | grep libprotobuf 不过需要先通过dpkg 安装,这也是很好的依赖包管理工具 ldconfig -v | grep li 阅读全文
posted @ 2019-11-13 15:12 SnailRush 阅读(10277) 评论(0) 推荐(0) 编辑
摘要: 引言 类接口需要添加默认参数,以适应不同情况调用, 但是clang tidy 不允许在接口上设置默认参数,ps: 可能担心继承类里接口重新设置新默认参数而导致误用的情况 于是解决办法有: 1. 新加一个基类具体方法,在具体方法里调用纯虚函数 2. 新加一个基类抽象方法,在子类重写方法里调用虚函数 结 阅读全文
posted @ 2019-10-25 11:10 SnailRush 阅读(462) 评论(0) 推荐(0) 编辑
摘要: 最近有个需求,需要在多台系统安装程序,安装文件是iso 格式的,最普通的办法就是拷贝到其它系统,然后mount loop 到本地目录。 但是比较麻烦,而且当前已经有一个nfs 服务端了,于是想出一个办法: 1. 先将iso 拷贝到nfs 服务端, 然后mount 到nfs 路径下 /nfsshare 阅读全文
posted @ 2019-10-15 15:49 SnailRush 阅读(378) 评论(0) 推荐(0) 编辑
摘要: 偶发一个想法搭一个验证码识别工具,网上查了一下有Tesseract 这个工具可以识别,所以有了后面一小时的搭建过程 ps:Ubuntu 下似乎可以直接用包管理工具来安装,我使用的源码编译安装 前提 1. 由于自己电脑是工作用的,所以一些常用编译工具齐全,不这里介绍, 另外最好使用root 来编译 2 阅读全文
posted @ 2019-10-10 21:46 SnailRush 阅读(740) 评论(0) 推荐(0) 编辑
摘要: 1. nginx 报错由于url里有空格,包括url本身或者参数有空格 2. git 报错是因为解决冲突的时候没有add,即没有merge 阅读全文
posted @ 2019-09-10 14:53 SnailRush 阅读(1603) 评论(0) 推荐(0) 编辑
摘要: mount 一个ipv6 nfs 项目在docker里mount 一个nfs来读写,而现在需要支持ipv6,所以先写了各小demo,最后成功mount,这里记录一下 说明: addr=2001:db8:1::1 是服务端地址 clientaddr=2001:db8:1::242:ac11:3 是客户 阅读全文
posted @ 2019-09-04 19:28 SnailRush 阅读(1427) 评论(0) 推荐(0) 编辑
摘要: 大部分情况下可以相互替换,但是某些情况class 无法替代typename,例如 有些情况下,typename 不能替换class 阅读全文
posted @ 2019-08-21 18:02 SnailRush 阅读(335) 评论(0) 推荐(0) 编辑
摘要: static_cast 强制转换 dynamic_caste 在运行时做检查,区别常见与子类转换为派生类 reinterpertor 意思时重解释,例如将void 转换成其它类型 阅读全文
posted @ 2019-08-21 17:33 SnailRush 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 理解 使用两个隔离又继承自统一接口类的对象:方法对象(抽象/具体), 包装器对象(抽象/具体)实现多种组合只需要 n + m种实现, 而对比直接继承,则需要n m 种实现,因此在面对多种具体类和多种额外装饰(额外的操作)时,装饰器模式比较有用,举例说明: 实现 方法类 包装类 分析 包装器要继承方法 阅读全文
posted @ 2019-08-21 13:57 SnailRush 阅读(923) 评论(0) 推荐(0) 编辑