摘要:
C类型转换 C语言:显式和隐式类型转换 隐式类型转化:编译器在编译阶段自动进行,能转就转,不能转就编译失败 显式类型转化:需要用户自己处理. 隐式类型:界定:相关类型,相近类型,意义相似的类型 可以发生类型转换 , 如整型和浮点可以发生类型转换,因为他们都表示数据的大小. 指针和整型不能发生,因为指 阅读全文
摘要:
#pragma once // 1. 设计一个不能被拷贝的类/* 解析:拷贝只会放生在两个场景中:拷贝构造函数以及赋值运算符重载,因此想要让一个类禁止拷贝, 只需让该类不能调用拷贝构造函数以及赋值运算符重载即可。 C++98; 将拷贝构造函数与赋值运算符重载只声明不定义,并且将其访问权限设置为私有即 阅读全文
摘要:
#pragma once /*Smart pointer 智能指针;灵巧指针 智能指针三大件//1.RAII//2.像指针一样使用//3.拷贝问题 ,指针指针需要的是浅拷贝,并且需要处理资源释放问题 > 引用计数 RAIIResource Acquisition Is Initialization 阅读全文
摘要:
//异常的概念/*抛出异常后必须要捕获,否则终止程序(到最外层后会交给main管理,main的行为就是终止) try{}内写可能会抛出异常的代码.catch(类型){处理} 写异常类型和异常处理 抛出的异常对象是自动遍历所有栈帧,直到main的 多层栈帧中,try跳转从上到下最近的catch 跳转的 阅读全文
摘要:
/** C++11 * 默认成员函数 原来C++类中,有6个默认成员函数: 构造函数 析构函数 拷贝构造函数 拷贝赋值重载 取地址重载 const 取地址重载 最后重要的是前4个,后两个用处不大。默认成员函数就是我们不写编译器会生成一个默认的。 C++11新增了两个构造函数,分别是 1.移动构造 2 阅读全文
摘要:
//字符串字面量/*常用:1.原始字符串字面量 括号内保持原样输出 没有转义字符,如\n不再是换行,而是直接输出字面量\nR"(str)"; 实例: R"(aa\a"b"bb)"; //print: aa\a"b"bb 注意:const char* s1 = R"foo(Hello World)fo 阅读全文