C语言:科目二【基础知识】

文章目录

  • [0x1 常见](#0x1 常见)
  • [0x2 Lambda](#0x2 Lambda)
  • [0x3 define typedef using](#0x3 define typedef using)
  • [0x4 基类 菱形继承(虚基类)](#0x4 基类 菱形继承(虚基类))
  • [0x5 构造](#0x5 构造)
  • [0x6 智能指针(涉及RAII概念) todo](#0x6 智能指针(涉及RAII概念) todo)
  • [0x7 类型推导[auto 与 decltype] todo](#0x7 类型推导[auto 与 decltype] todo)
  • [0x8 多线程加锁问题](#0x8 多线程加锁问题)
  • [0x9 C语言__attribute__](#0x9 C语言__attribute__)
  • [0xA 错题辨析](#0xA 错题辨析)

0x1 常见

c++ 科目二 每日一题 类相关[初始化列表]

c++ 科目二 每日一题 类相关[override关键字]

c++ 科目二 每日一题 类相关[final关键字]

c++ 科目二 每日一题 类相关[const关键字]

c++ 科目二 每日一题 类相关[三五零规则]

c++ 科目二 每日一题 多态[overload]

0x2 Lambda

c++ 科目二 每日一题 [Lambda] part1

初步认识

c++ 科目二 每日一题 [Lambda] part2

值传递 与 引用传递 的内存区别

c++ 科目二 每日一题 [Lambda] part3

捕获不同类型的变量,全局变量,静态变量,局部变量的区别

0x3 define typedef using

c++ 科目二 每日一题 [define]

https://blog.csdn.net/Wong_Tkpzrl/article/details/140413368

c++ 科目二 每日一题 [typedef]

https://blog.csdn.net/Wong_Tkpzrl/article/details/140446756

c++ 科目二 每日一题 [using]

https://blog.csdn.net/Wong_Tkpzrl/article/details/140446929

辨析1

define typedef using\] define 的处理阶段是在 pre-processing 辨析2 \[define typedef using\] 别名不是简单替换,不能组合使用 辨析3 \[define typedef using\] 有了typedef为啥还需要using,泛型编程 c++ 科目二 每日一题 \[ typedef 与 using

枚举

c++ 科目二 每日一题 [传统类型枚举 & 强制类型枚举]

0x4 基类 菱形继承(虚基类)

基类

虚基类

虚类

纯虚类

C++ 科目二 [继承问题,(菱形继承->虚基类)]

c++ 科目二 每日一题 类相关[ 父类指针指向子类对象 ]

C++ 科目二 [继承问题,virtual函数调用,为什么禁止在virtual使用默认参数]

0x5 构造

委托构造

继承构造

转换[cast] (Emmm 一言难尽)

const_cast(expression);

static_cast(expression);

dynamic_cast(expression);

reinterpret_cast(expression);

C++ 科目二 [const_cast]

C++ 科目二 [static_cast]

C++ 科目二 [dynamic_cast]

C++ 科目二 [reinterpret_cast]

0x6 智能指针(涉及RAII概念) todo

auto_ptr

C++ 科目二 智能指针 [auto_ptr] (c++98引入,c++11停用,c++17废弃)

unique_ptr[c++11引入]

C++ 科目二 智能指针 [unique_ptr] (auto_ptr 的演进版本)

shared_ptr[c++11引入]

C++ 科目二 智能指针 [shared_ptr] (带计数的智能指针)

weak_ptr[c++11引入]

C++ 科目二 智能指针 [weak_ptr] (解决shared_ptr的循环引用问题)

0x7 类型推导[auto 与 decltype] todo

auto

decltype

const 与 constexpr 关键字

const

constexpr

多线程加一

无锁方式【性能好,不精确】

加锁方式【性能差,精确】

atomic方式【性能1/6,精确】

C++ 科目二 [多线程加一]

0x8 多线程加锁问题

mutex

mutex

time_mutex

recursive_mutex

recursive_time_mutex

shared_mutex [C++17]

shared_time_mutex [C++17]

lock

lock_guard [排它锁]

unique_lock [排它锁]

shared_lock [共享锁]

adopt_lock

condition_variable

通知

notify_one

notify_all

等待

wait

wait_for

wait_until

0x9 C语言__attribute__

C函数特性:创建弱符号(weak symbol)

https://blog.csdn.net/Wong_Tkpzrl/article/details/141127830

0xA 错题辨析

C++ 科目二 [错题集锦] part1

c++ 科目二 每日一题 [ 变量的内存分布 ]

相关推荐
_OP_CHEN几秒前
【Python基础】(三)Python 语法基础进阶:条件循环 + 实战案例,从入门到精通的核心跳板
开发语言·python·python入门·条件语句·循环语句·python基础语法
苹果电脑的鑫鑫几秒前
.eslintrc.js这个文件作用
开发语言·javascript·ecmascript
ytttr873几秒前
matlab进行利用遗传算法对天线阵列进行优化
开发语言·算法·matlab
无限进步_2 分钟前
【C语言】队列(Queue)数据结构的实现与分析
c语言·开发语言·数据结构·c++·算法·链表·visual studio
特立独行的猫a5 分钟前
Google C++ 编码规范核心要点总结 (2025精简版)
开发语言·c++·编码规范
快乐非自愿13 分钟前
Java函数式接口——渐进式学习
java·开发语言·学习
爱吃大芒果14 分钟前
Flutter 表单开发实战:表单验证、输入格式化与提交处理
开发语言·javascript·flutter·华为·harmonyos
福尔摩斯张15 分钟前
TCP/IP网络编程深度解析:从Socket基础到高性能服务器构建(超详细)
linux·运维·服务器·开发语言·网络·网络协议·tcp/ip
superman超哥19 分钟前
仓颉语言中网络套接字封装的深度剖析与工程实践
c语言·开发语言·c++·python·仓颉
wanghowie20 分钟前
01.01 Java基础篇|语言基础与开发环境速成
java·开发语言