news 2026/5/2 21:02:51

C++(11):static_pointer_cast/dynamic_pointer_cast

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++(11):static_pointer_cast/dynamic_pointer_cast

C++11引入了static_pointer_cast用于在编译期做向下转型(从基类向派生类转型),但是不做类型安全检查。同时引入了dynamic_pointer_cast,用于在运行期做类型安全检查的向下转型。

#include <iostream> #include <memory> struct FileBase { virtual ~FileBase() = default; virtual const char* kind() const { return "FileBase"; } }; struct TextFile : FileBase { const char* kind() const override { return "TextFile"; } void write_line() const { std::cout << "TextFile::write_line() called" << '\n'; } }; struct BinaryFile : FileBase { const char* kind() const override { return "BinaryFile"; } void dump_bytes() const { std::cout << "BinaryFile::dump_bytes() called" << '\n'; } }; void print_owner_count(const char* name, const std::shared_ptr<FileBase>& ptr) { std:
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 21:02:24

ap_vld ap_ack ap_hs使用

一、ap_vld & ap_ack & ap_hs的使用 1.这三个接口都可以作用于输入参数2.ap_vld作用在输入参数上说明 valid data的配合使用&#xff0c;但是这个作为综合工具中的输入参数&#xff0c;传输效率比较高&#xff0c; 但是存在一个致命的问题&#xff0c;就是数据可靠性比…

作者头像 李华
网站建设 2026/5/2 21:00:41

终极指南:如何快速合并B站缓存视频并保留弹幕播放

终极指南&#xff1a;如何快速合并B站缓存视频并保留弹幕播放 【免费下载链接】BilibiliCacheVideoMerge &#x1f525;&#x1f525;Android上将bilibili缓存视频合并导出为mp4&#xff0c;支持安卓5.0 ~ 13&#xff0c;视频挂载弹幕播放(Android consolidates and exports th…

作者头像 李华
网站建设 2026/5/2 20:57:51

WaveTools鸣潮工具箱:解锁120FPS与多账号管理的终极游戏助手

WaveTools鸣潮工具箱&#xff1a;解锁120FPS与多账号管理的终极游戏助手 【免费下载链接】WaveTools &#x1f9f0;鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools 还在为《鸣潮》游戏帧率被限制而烦恼吗&#xff1f;想要轻松管理多个游戏账号却找不…

作者头像 李华
网站建设 2026/5/2 20:47:25

微积分自学笔记(13):向量与空间解析几何

第10章 向量与空间解析几何本文作者&#xff1a;黄邦勇帅(原名&#xff1a;黄勇)&#xff0c;读者意见可发至 本文旨在以通俗的语言将讲解微积分&#xff0c;尽量以零起点角度将复杂的微积分讲解明白。 引用本文内容须注明“参考文档&#xff1a;《微积分笔记》作者&#xff1a…

作者头像 李华