Home
Interview
工作经历
Q&A
LeetCode
高频考题
面试经典150题
C++
知识点
STL
基础
Python
Django
基础
Linux
性能分析 tools
Windows
Course
李宏毅 ML/DL
Linear Algebra
Archives
About
疯狂的TalentQ
累计撰写
102
篇文章
累计创建
0
个标签
累计收到
0
条评论
栏目
Home
Interview
工作经历
Q&A
LeetCode
高频考题
面试经典150题
C++
知识点
STL
基础
Python
Django
基础
Linux
性能分析 tools
Windows
Course
李宏毅 ML/DL
Linear Algebra
Archives
About
目 录
CONTENT
以下是
基础
相关的文章
2025-07-30
C++特性:多态
1 什么是多态 多态(Polymorphism)是C++面向对象编程的三大特性(“封装”、“继承”、“多态”)之一。它允许同一个接口在不同对象上展现不同的行为。多态的核心价值在于接口复用、代码解耦、扩展性强,实现了“对扩展开放,对修改封闭”的设计原则。 C++中的多态分为两类: 静态多态(编译时多态
2025-07-30
11
0
0
C++
基础
2025-07-28
C++原子操作:std::atomic
一、引言 在多线程编程中,数据竞争(data race)和原子性(atomicity)问题一直是开发者关注的重点。C++11 标准引入了 <atomic> 头文件,提供了类型安全的原子操作工具——std::atomic。 二、原子性与数据竞争 2.1 什么是原子操作?<
2025-07-28
25
0
0
C++
基础
2025-07-28
C++并发编程:std::async与std::future
引言 随着多核处理器的普及,C++程序员越来越需要利用并发编程来提升程序性能和响应能力。C++11标准引入了丰富的并发支持,其中std::async和std::future是最常用的异步任务和结果获取机制。 一、std::future与std::promise 1.1 什么是std::future?
2025-07-28
4
0
0
C++
基础
2025-07-24
C++ 多线程:深入理解 std::thread
引言 在 C++11 之前,多线程基本依赖平台相关 API(POSIX pthread、Windows CreateThread)。 std::thread 是 C++11 及以后 提供的跨平台线程抽象,特点: 零成本抽象:内部直接映射 pthread / WinThread RAII 语义:必须显
2025-07-24
9
0
0
C++
基础
2025-07-23
C++锁机制:条件变量(condition_variable)
1. 引言 在多线程环境中,线程经常需要等待某个条件达成后,再继续执行。 例如: 等待队列非空再消费 等待缓存刷新完成再继续 仅用互斥量 std::mutex 会导致忙等待(busy-waiting),浪费 CPU。 条件变量(condition variable,下文简称 CV)允许线程主动挂起,
2025-07-23
6
0
0
基础
C++
2025-07-22
C++锁机制:锁管理器(RAII封装器)
引言 在现代 C++ 多线程编程中,资源的同步与互斥管理是保障程序正确性和性能的核心。C++ 标准库不仅提供了多种互斥量(mutex),还为我们带来了 RAII 风格的锁管理器(Lock Manager),极大地简化了并发编程中的资源管理。 1. 基础知识回顾 1.1 互斥量(Mutex) 互斥量是
2025-07-22
12
0
0
C++
基础
2025-07-21
C++锁机制:互斥量(mutex)
一、锁的基本概念 在多线程程序中,多个线程可能同时访问和操作同一份数据,若不加以控制,将导致数据竞争(Data Race)和数据不一致。锁(Lock)是一种同步原语,能够确保同一时刻只有一个或部分线程访问共享资源,从而保证并发安全。 为什么需要锁? 并发≠并行。当多个线程访问 共享可变状态 时,必须
2025-07-21
18
0
0
C++
基础
2025-07-17
C++设计模式:单例模式与工厂模式
一、单例模式(Singleton Pattern) 单例模式是一种设计模式,确保一个类只有一个实例,并提供一个全局访问点来获取这个实例。这种模式在以下场景中非常有用: 当系统需要一个全局唯一的资源管理器时(如日志记录器、配置管理器等)。 当需要控制实例化过程时(如限制实例数量)。 单例模式可根据实现
2025-07-17
28
0
0
C++
基础
2025-07-17
C++ 智能指针:从资源泄漏到零成本抽象
在现代C++开发中,内存管理一直是核心问题。传统的new和delete操作虽然灵活,但容易导致内存泄露或悬空指针。为了解决这些问题,C++11引入了智能指针(Smart Pointer),极大地提升了代码的安全性和可维护性。本文将详细介绍C++中的智能指针,包括其原理、三种类型、典型使用场景、循环引
2025-07-17
16
0
0
基础
C++
2025-07-16
C++代码格式化
一、安装 clang-format sudo apt install clang-format 二、使用 clang-format clang-format --style=Google -i FILENAME 三、语法糖 将下面脚本写入 ~/.bashrc 中,则可以直接使用 format FIL
2025-07-16
2
0
0
C++
基础
1
2