YGC的主页

左值、右值、左值引用、右值引用、move语义

一、定义 左值(Lvalue):有名字、可被取地址、生命周期稳定的值 右值(Rvalue):没有名字、临时产生、用完即销毁的值 所有C++表达式结果,只有两种身份:左值 或 右值。 二、左值 & 右值 详细区分 1. 左值 Lvalu

蔚淦丞 蔚淦丞 发布于 2026-09-11

C++多态与虚函数

一、什么是多态 多态是 C++ 面向对象三大特性之一(封装、继承、多态)。 多态含义:父类指针 / 引用指向子类对象,调用函数时,执行的是子类的版本。 简单一句话: 同样的父类接口,不同的子类表现出不同行为。 多态分为两种: 静态多态(编译期):函数重载、模板 动态多态(运行期):虚函数(本文重点)

蔚淦丞 蔚淦丞 发布于 2026-09-03

C++虚继承核心机制

一、虚继承的诞生原因 普通多重菱形继承存在两个严重问题: 公共基类会被拷贝多份存放在最终子类对象中,造成数据冗余。 访问公共基类成员时存在二义性,编译器不知道使用哪一份父类副本。 虚继承的唯一作用: 让多个父类,共享同一份公共基类子对象,保证最终子类中公共基类唯一。

蔚淦丞 蔚淦丞 发布于 2026-09-03

C++构造、析构函数访问权限 特殊场景

默认 public 构造 / 析构是常规用法,本文不记录。 只记录工程特殊用法 + 精准限制 + 真实作用。 基础核心规则(5 条) 构造权限:控制能不能 new / 栈实例化 析构权限:控制能不能 delete / 栈自动析构 protected:子类可见,外部不可见 构造、析构 和拷贝无关,禁止

蔚淦丞 蔚淦丞 发布于 2026-09-03

C++多线程

C++多线程 state: Doing 锁 lambda函数的写法 #include<iostream> #include<thread> #include<chrono> #include<mutex> using namespace std; int main() { // 1.atom

蔚淦丞 蔚淦丞 发布于 2026-08-31