首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
C/C++
PAK向日葵
创建于2023-10-17
订阅专栏
Learning C/C++
暂无订阅
共11篇文章
创建于2023-10-17
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【C++】从继承类型对隐式转换的影响,看不同继承类型的语义
问题 今天在做项目时碰到了一个问题。简化后的代码如下: 现在我尝试将一个BinaryExpression指针赋值给Expression指针,简化后的代码如下: 经测试,代码可以正常通过编译。 可当我将
【C/C++】重学C++模板机制——从反汇编代码入手
函数模板 从一个链接问题看函数模板的本质 假设我们有一个main.cc,其代码内容如下: 毫无疑问,这段代码肯定是能够编译成功和运行的。 现在,我们将add模板函数的实现源码移动到另外一个文件test
【C/C++】手写一个std::shared_ptr
基本框架 共享指针的基本框架是非常简单的,啪啪啪几下就能敲好。 唯独需要注意的几点: 引用计数本身并不是共享指针的一个成员变量,而是在堆上进行维护。共享指针只持有一个指向引用计数的指针。 考虑到移动赋
【C/C++】手写一个std::unique_ptr
我们先写一个简单的MyUniquePtr类,它可以实现最基本的"裸指针所有权转移"。以及我们测试智能指针用的测试类Point: 接下来,我们重载一下*和->运算符,让MyUniquePtr的行为看上去
【C/C++】什么是命名空间(namespace)?
命名空间可以被理解为某种代码容器,帮助程序员将代码片段组织在不同的逻辑单元中,避免名称冲突,并使代码结构更加清晰。 全局命名空间 全局命名空间是程序中最基础的层级。在这个命名空间中定义的任何变量、函数
【C/C++】List Initialization, Direct Initialization与Copy Initialization之间的差异
截至C++11标准,该语言中共有三种主要的创建对象的方式,分别为List Initialization, Direct Initialization和Copy Initialization。 似乎没啥
【专业课学习】QT Creator知识点整理
信号槽 对话框 模态对话框与非模态对话框 使用原生QDialog组件: QT自带的消息弹窗 QMessageBox继承自QDialog,同样支持模态和非模态对话框。参见书P54-55. 父子窗口通信
【专业课学习】「Windows API」疑难点汇编
本文用于记录笔者在学习「Windows API」时碰到的疑难点。本文对应的实验环境为Visual Studio 2022。 为了方便代码调试,我们首先编写一个自定义类,用于在VS的控制台中打印调试信息
【期末复习笔记】在Linux C环境下实现一些简单的Shell命令
《Linux系统与编程实践》期末复习笔记:在Linux C环境下实现ls、pwd等一些简单的Shell命令。
【专业课学习】《C++面向对象程序设计》期末考前押题
其实这是我自己准备期末考试时做的重要知识点梳理,题目都不是很难(因为这学期也没学啥很高阶的语法和技巧...),注重考察基础,主要是为了防止考试时出现低级错误,故特此整理。 1. 请阅读如下的C++代码
【个人笔记】MSVC C++ STL库源码片段摘抄
在学习C++ STL库时,有时候我会去看一下其中的一些函数或者方法是如何实现的,在这个过程中不时会碰到一些个人认为写得比较精彩或者洗练简洁的源代码。故即日起专门开一个文章用作笔记进行摘抄学习。本笔记不