Klizzz's blog

智能指针

[TOC] 1 什么是智能指针 C++没有垃圾回收机制,需要程序员自己释放和分配内存,否则就会照成内存泄漏。 智能指针是指向动态对象的指针,当其应该被释放时,智能指针可以确保自动释放内存,不需要手动释放,避免内存泄漏问题,更加容易也更加安全地使用动态内存。 智能指针的本质是类模版,当智能指针所指向的对象使用完后,对象会自动调用析构函数去释放指针所指向的空间。 以下是智能指针基本框架...

左值与右值

[TOC] 1. 左值与右值 在C++中,左值(lvalue)和右值(rvalue)是表达式的两种基本类别,它们区分了表达式的不同属性,特别是它们的身份和存储期。 左值和右值的区别不仅仅是语法上的,它们也影响代码的语义,尤其是在涉及到重载操作符、移动语义和完美转发时。 C++11引入了右值引用(用&&表示),它允许开发者区分一个对象是可以安全地“移动”(即可以从中窃取...

多线程

[TOC] 1. 基本概念 1.2 进程和线程 进程和线程都是操作系统中的基本概念,它们在多任务操作系统中用于程序的执行和系统资源管理。1 进程是资源分配的单位,线程是执行流的最小单位,它们是现代操作系统中实现并行和并发的基础。 进程(Process): 进程是操作系统进行资源分配和调度的基本单位。 它是一个程序的运行实例,拥有独立的地址空间...