博客
分类
标签
归档
友链
关于
Dark Mode
博客
分类
标签
归档
友链
关于
Dark Mode
Mens et Manus
首页
帮助
示例
社区
档归
源码
CPP中的左值和右值概念
CPP中的左值和右值概念Overview 语法上能取地址就是左值 有名引用本身是左值, 无名右值引用(std::move()的返回)是右值 const左值引用(const T& val = 6)引用右值, 可以编译通过。 因为与右值不指代对象, 没有”存储”的语义没有冲突 性能上没差别, 引用都可以避免拷贝 左值引用可以使用const T&引用右值 右值引用可以使用std::...
2022-10-17
Read More
多态Tree Easy Pieces
Preface多态Tree Easy Pieces: 强制类型转换 公共前缀 this指针偏移 这里讨论的cpp的多态是指父类虚函数的执行是由指针具体指向的对象而定。下面将围绕如下例子说明: 1234567891011121314151617181920212223242526272829class Shape {public: virtual void area(){...
2022-04-11
Read More
CPP cheat sheet
小抄 stack 妙用structure bind case 1: 使用pair等时用p.first, p.second有很差的可读性。可以使用auto [name, age] case 2: 除了pair, 结构体也可以使用bind。绑定的顺序和结构体成员顺序有关 12345678struct Person { string name; int age;}...
2000-01-01
Read More
现代cpp杂项
[TOC] cpp单例模式static标记, 返回引用。static标记后构造函数就只会触发一次。 1234567class A {public: static A &getinstance() { static A a; return a; }}; constexpr标注编译期就能确定(编译器执行), 从而不需要运行时, ...
2000-01-01
Read More