06 2017 档案
摘要:std::string 表示std命名空间下的 string类。直接::开始,表示顶层命名空间(全局变量)std::string -> ::std::string 这样也可以。::和 文件路径的 / 可以对照理解。linux下面没有盘符之分。 只有一个盘,所以也就没有C,D,E,F这种了。/usr/
阅读全文
摘要:手贱命令写错了,直接把一个目录下的文件全删了,用下面的方法虽然恢复了,但是还是有几个文件没有找回来。。。(可以找回,但是要在另一个盘进行操作) 如果不小心用rm –rf xxx删除了文件或目录,在ext2文件系统上是可以恢复的,但需要满足以下3个基本条件: 满足了以上3个条件就可以开始动手恢复了。被
阅读全文
摘要:Linux的静态库是以.a结尾的,要连接静态库有两种方法,一种是在编译命令最后直接加上库路径/库名称。 例如你的库在绝对目录/lib/libtest.a下面你就可以这样来编译$(CC) $(CFLAGS) $^ -o $@ /lib/libtest.a 另外一种方法是,你可以用-L制定库的目录,用-
阅读全文
摘要:单例模式 单例模式,可以说设计模式中最常应用的一种模式了,据说也是面试官最喜欢的题目。但是如果没有学过设计模式的人,可能不会想到要去应用单例模式,面对单例模式适用的情况,可能会优先考虑使用全局或者静态变量的方式,这样比较简单,也是没学过设计模式的人所能想到的最简单的方式了。 一般情况下,我们建立的一
阅读全文
摘要:原文写的非常好,来自这里 一个函数如果说是“异常安全”的,必须同时满足以下两个条件:1.不泄漏任何资源;2.不允许破坏数据。 我们先通过两个反面的例子开始。 第一个是造成资源泄漏的例子。一个类Type,内含一个互斥锁成员 Mutex mutex,以及一个成员函数void Func()。假设Func函
阅读全文
摘要:在写shell的时候老是傻傻分不清楚,今天来理一理。 1.反引号位 (`) 位于键盘的Tab键的上方、1键的左方。注意与单引号(')位于Enter键的左方的区别。 在Linux中起着命令替换的作用。命令替换是指shell能够将一个命令的标准输出插在一个命令行中任何位置。如下,shell会执行反引号中
阅读全文
摘要:一、C++基础 1.1 sizeof 问题(空类、含虚函数、内存对齐) 1.2类构造的时候会默认生成哪些函数,C++11多了什么?(move,左\右值) 1.3为什么c++不类似java一样实现一个内存回收库?内存管理理解? 1.4hash表中浮点数可以作为key吗? 不可以,浮点数运算过程中会有很
阅读全文
摘要:1. 浮点数IEEE 754表示方法 要搞清楚float累加为什么会产生误差,必须先大致理解float在机器里怎么存储的,这里只介绍一下组成 由上图可知(摘在[2]), 浮点数由: 符号位 + 指数位 + 尾数部分, 三部分组成。由于机器中都是由二进制存储的,那么一个10进制的小数如何表示成二进制。
阅读全文
摘要:1. 2在计算机中的存储为10 2. (x<<1) 等价于乘2 如果要有左右顺序来看计算机内存的排列的话,那么排序顺序如下: 也就是内存从右到左升序。 例子: 观察int在计算机是如何存储的 结果: 可以发现,int类型中数据的低位与内存的低位相对应(小端模式)。 配合平时一直用的左移、右移操作即可
阅读全文
摘要:在此解释下basepath : 由此,我们获得了当前正在执行的脚本的存放路径。
阅读全文
摘要:在编辑某个文件的时候,可能会出现需要对某种特定的操作进行许多次的情况,以编辑下面的文件为例: 这是一个ini类型的配置文件,可以看到每一行的最前面有一个逗号,现在如果需要将每行前面的逗号去掉,怎么办?在第一行行首按x,然后按j,然后按x...这样重复下去?确实,我最开始也是这样的,但如果这个文件有1
阅读全文
摘要:请编写一个makefile同时编译、链接下面两个程序: main1.c: #include<stdio.h> int main(void) { printf("main1\n"); } main2.c: #include<stdio.h> int main(void) { printf("main2
阅读全文
摘要:1.第一行加 -xv 2. 3.如果只想调试其中几行脚本的话可以用 set -x 和 set +x 把要调试的部分包含进来: 比如:
阅读全文
摘要:shell中的赋值和操作默认都是字符串处理,在此记下shell中进行数学运算的几个特殊方法,以后用到的时候可以来看,呵呵。 1、错误方法举例 a) var=1+1 echo $var 输出的结果是1+1,悲剧,呵呵 b) var=1 var=$var+1 echo $var 输出结果是1+1,依然悲
阅读全文
摘要:from here 简介之所以能用到这个命令,关键是由于很多命令不支持|管道来传递参数,而日常工作中有有这个必要,所以就有了xargs命令,例如: 这个命令是错误的find /sbin -perm +700 |ls -l 这样才是正确的find /sbin -perm +700 |xargs ls
阅读全文
摘要:查找文件find ./ -type f查找目录find ./ -type d查找名字为test的文件或目录find ./ -name test查找名字符合正则表达式的文件,注意前面的‘.*’(查找到的文件带有目录)find ./ -regex .*so.*\.gz查找目录并列出目录下的文件(为找到的
阅读全文
摘要:make 在执行时会设置一个特殊变量 -- "MAKECMDGOALS" ,该变量记录了命令行参数指定的终极目标列表,没有通过参数指定终极目标时此变量为空。该变量仅限于用在特殊场合(比如判断),在 Makefile 中最好不要对它进行重新定义。下面通过一个实例来说明此变量的意思,设一 Makefil
阅读全文