摘要:
创建版本库 $ git clone <url> #克隆远程版本库 $ git init #初始化本地版本库 修改和提交 $ git status #查看状态 $ git diff #查看变更内容 $ git add . #跟踪所有改动过的文件 $ git add <file> #跟踪指定的文件 $ 阅读全文
摘要:
git config --global user.name "songkunpeng" git config --global user.email "your.email@example.com" ssh-add -K ~/.ssh/id_rsa 设置Git的user name和email:(如果 阅读全文
摘要:
二叉树的遍历 前序遍历 访问顺序 : 根节点、前序遍历左子树、前序遍历右子树 递归形式 private void preorder(Node<E> node, Visitor<E> visitor) { if (node == null || visitor.stop) return; visito 阅读全文
摘要:
异常 ◼ 异常是一种在程序运行过程中的发生的不好预测的错误(比如内存不够) ◼ 异常没有被处理,会导致程序终止 ◼ throw异常后,会在当前函数中查找匹配的catch,找不到就 终止当前函数代码,去上一层函数中查找。如果最终都找不 到匹配的catch,整个程序就会终止 #include <iost 阅读全文
摘要:
C++11新特性 auto 可以从初始化表达式中推断出变量的类型,大大简化编程工作 属于编译器特性,不影响最终的机器码质量,不影响运行效率 int a = 10; int b = 20; auto p = [a] () mutable { a++; cout << "lambda - " << a 阅读全文
摘要:
类型转换 C语言风格的类型转换符 (type)expression type(expression) C++中有4个类型转换符 static_cast dynamic_cast reinterpret_cast const_cast 使用格式:xx_cast(expression) const_ca 阅读全文
摘要:
模板 泛型,是一种将类型参数化以达到代码复用的技术,C++中使用模板来实现泛型 模板的使用格式如下 template <typename\class T> typename和class是等价的 模板没有被使用时,是不会被实例化出来的 模板的声明和实现如果分离到.h和.cpp中,会导致链接错误 一般将 阅读全文
摘要:
运算符重载 (operator overload) 运算符重载(操作符重载):可以为运算符增加一些新的功能 // operator overload //class Point { // friend Point operator+(const Point &, const Point &); // 阅读全文
摘要:
友元 友元包括友元函数和友元类 如果将函数A(非成员函数)声明为类C的友元函数,那么函数A就能直接访问类C对象的所有成员 如果将类A声明为类C的友元类,那么类A的所有成员函数都能直接访问类C对象的所有成员 友元破坏了面向对象的封装性,但在某些频繁访问成员变量的地方可以提高性能 #include <i 阅读全文
摘要:
Const 成员 const成员:被const修饰的成员变量、非静态成员函数 const成员变量 必须初始化(类内部初始化),可以在声明的时候直接初始化赋值 非static的const成员变量还可以在初始化列表中初始化 const成员函数(非静态) const关键字写在参数列表后面,函数的声明和实现 阅读全文