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_ptrc++11引入

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

shared_ptrc++11引入

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

weak_ptrc++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++ 科目二 每日一题 变量的内存分布

相关推荐
z落落3 小时前
C# 泛型方法(原理、类型推断、多泛型参数)+泛型效率(普通类型 VS Object装箱 VS 泛型)
开发语言·c#
L_09073 小时前
【C++】异常
开发语言·c++
世辰辰辰4 小时前
批量修改图片/文本名子
开发语言·python·批量修改文件名
z落落6 小时前
C# 四种特殊类:抽象类、密封类、静态类、部分类
开发语言·c#
caimouse6 小时前
Reactos 第 4 章 对象管理 — 4.5 几个常用的内核函数
c语言·windows·架构
VidDown6 小时前
Webhook 调试器:让第三方回调“原形毕露”
java·开发语言·javascript·编辑器·postman
x138702859576 小时前
c语言排雷游戏(基础版9*9)
c语言·算法·游戏
装不满的克莱因瓶7 小时前
基于 OpenResty 扩展开发实现动态服务注册与发现能力
java·开发语言·架构·openresty
caimouse7 小时前
Reactos 第 4 章 对象管理 — 4.3 句柄和句柄表(Handle & Handle Table)
c语言·windows·架构
weixin_523185327 小时前
Java基础知识总结(四):引用数据类型与参数传递机制
java·开发语言·python