字节对齐
关于C++字节对齐收集整理如下, 以便查阅.
概念对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做自然对齐。比如在32位cpu下,假设一个整型变量的地址为0x00000004,那它就是自然对齐的。
List逆序的递归和迭代
List的逆序可以有递归和迭代两种方法, 这两种方法的C++实现如下.
#include <iostream>
struct Node {
int data;
Node *next;
};
void printNode(Node *node) {
Node *p =...
虚拟继承
概念:C++使用虚拟继承(Virtual Inheritance),解决从不同途径继承来的同名的数据成员在内存中有不同的拷贝造成数据不一致问题,将共同基类设置为虚基类。这时从不同的路径继承过来的同名数据成员在内存中就只有一个拷贝,同一个函数名也只有一个映射。
解决问题:解决了二义性问题,也节省了内存,避免了数据不一致的问题。
不能被继承的类
虚继承模板类NoCopyable的类不可再被继承。
#include <iostream>
#include <cstdio>
template <typename T>
class NoCopyable {
public:
friend T;
private:
NoCopyable()...
Linux踢出用户
查看当前登录用户$ whatis w
w (1
Linux 32 or 64
查看linux是32位还是64位方法
> ~ getconf LONG_BIT
64
VS2017编译putty
下载putty从putty中选择”Unix source archive”下载
加载工程源码下载后, 解压,...
Hexo搭建个人博客
准备工作
安装Git. 将本地的网页和文章等内容发布或提交到GitHub上需要用到Git.
安装Node.js. Hexo是基于Node.js的高效静态站点生成框架.
安装Hexo. 在Node.js安装完成后, 通过控制台执行以下命令即可.
C++命令行参数解析
Linux在Linux环境可以使用getopt解析命令行参数.
mainmain()函数声明:
int...
安装deb和rpm文件
介绍
deb 是 ubuntu 、debian 的格式。
rpm 是 redhat 、fedora 、suse 的格式。
安装