DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

2022年1月21日

摘要: 一、c++11中的智能指针数组创建 在c++11中引入了智能指针这个概念,这个非常好,但是有一个问题显然被忘记了,如何动态创建智能指针数组,在c++11中没有提供直接的函数。换句话说,创建智能指针的make_shared,不支持创建数组。那在c++11中如何创建一个智能指针数组呢?只能自己封装或者变 阅读全文
posted @ 2022-01-21 17:39 DoubleLi 阅读(892) 评论(0) 推荐(0)

摘要: 一,内存 静态内存,栈内存,堆内存 ①静态内存 存储局部static对象和类的static对象以及定义在任何函数之外的变量 ②栈内存 栈内存用于保存定义在函数体内非static对象。 ③堆内存 运行需要创建时,才申请的内存空间,只有当程序结束时,才回收,也就是说我们如果不需要这个对象时,我们必须手动 阅读全文
posted @ 2022-01-21 17:36 DoubleLi 阅读(1919) 评论(0) 推荐(0)

摘要: //OK, pointer to int 999 std::shared_ptr<int> sp(new int(999)); template< typename T > struct array_deleter { void operator ()( T const * p) { delete[ 阅读全文
posted @ 2022-01-21 17:33 DoubleLi 阅读(321) 评论(0) 推荐(1)

摘要: 引子智能指针在帮助C++程序员管理动态内存方面可谓神兵利器,但是在有些情况下我们想要对数组进行动态内存管理就会发现一个问题 咦?shared_ptr 在默认情况下是不能指向数组的,那是为什么呢。 原因是因为我们的 shared_ptr 默认的删除器是使用 Delete 对智能指针中的对象进行删除,而 阅读全文
posted @ 2022-01-21 17:26 DoubleLi 阅读(612) 评论(0) 推荐(0)

摘要: 改demo程序,调用ffmpeg API,获取rtsp的音视频流,打印每一包的ts,验证是否同步。 运行环境是linux //FFDecoder.h#pragma once //#define __STDC_CONSTANT_MACROS extern "C" { #include "libavco 阅读全文
posted @ 2022-01-21 11:15 DoubleLi 阅读(606) 评论(0) 推荐(0)

摘要: 本篇博客在雷神的结构体介绍基础上按自己的喜好整理的 后面根据自己工作中所需有所增改 AVStream 存储每一个视频/音频流信息的结构体 AVStream重要的变量如下 int index:标识该视频/音频流AVCodecContext *codec:指向该视频/音频流的AVCodecContext 阅读全文
posted @ 2022-01-21 11:09 DoubleLi 阅读(184) 评论(0) 推荐(0)

摘要: 一、前言写一个用到指针的程序时,被拷贝、赋值、析构函数坑了一波,网上查相关博客,发现关于拷贝、赋值构造函数调用时机大多都有错误,因此决定自己总结撸一发博客。 A (A& a); //拷贝构造函数A (const A& a); //拷贝构造函数A& operator= (const A& a); // 阅读全文
posted @ 2022-01-21 09:57 DoubleLi 阅读(177) 评论(0) 推荐(0)