C++基础
文章平均质量分 60
unique_no_007
擅长C/C音视频行业
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
音频回声消除算法之代码处理逻辑
第一,我们写音视频程序开发的时候,首先考虑的是架构设计,所以一般会设计成音频采集逻辑一个线程,音频播放逻辑一个线程,数据通信通过队列加锁的方式,这样处理上可以并行,并且代码看着更清晰,逻辑也简单,可以做到收发数据分离,但是在处理回音算法问题上就会出现或多或少的问题了。因为大家都知道,我们做回声消除算法,涉及到mic采集和speaker播放的配合,需要采集信号和参考信号的同步,这里面就有一些技术门道了,那下面我们就探讨下,做回音消除处理,是在一个线程里面做,还是在两个线程里面处理比较好?原创 2024-12-21 15:10:58 · 1042 阅读 · 0 评论 -
工厂方法模式
8.1 女娲造人的故事 东汉《风俗通》记录了一则神话故事:“开天辟辟,未有人民,女娲搏,黄土作人……”,讲述的内容就是大家非常熟悉的女娲造人的故事。开天辟地之初,大地上并没有生物,只有苍茫大地,纯粹而洁净的自然环境,寂静而又寂寞,于是女娲决定创造一个新物种(即人类)来增加世界的繁荣,怎么制造呢? 别忘了女娲是神仙,没有办不到的事情,造人的过程是这样的:首先,女娲转载 2014-02-10 13:00:29 · 1606 阅读 · 0 评论 -
设计模式:简单工厂、工厂方法、抽象工厂之小结与区别
简单工厂,工厂方法,抽象工厂都属于设计模式中的创建型模式。其主要功能都是帮助我们把对象的实例化部分抽取了出来,优化了系统的架构,并且增强了系统的扩展性。本文是本人对这三种模式学习后的一个小结以及对他们之间的区别的理解。 简单工厂简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。不修改代码的话,是无法扩展的。转载 2014-02-10 11:37:59 · 1034 阅读 · 0 评论 -
结构体中Char a[0]用法——柔性数组
有如下定义:typedef struct{ char a; char b[0]; }; 其中元素Char b[0];叫做柔性数组,主要用于使结构体包含可变长字段。详细内容如下:柔性数组; 【柔性数组结构成员 C99中,结构中的最后一个元素允许是未知大小的数组,这就叫做柔性数组成员,但结构中的柔性数组成员前面必须至少一个其他成员。柔性数组成员允许结构中包含一个大小原创 2014-02-08 17:25:36 · 1546 阅读 · 0 评论 -
【友元】friend的用法
友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类。(1)友元函数 友元函数的特点是能够访问类中的私有成员的非成员函数。友元函数从语法上看,它与普通函数一样,即在定义上和调用上与普通函数一样。下面举一例子说明友元函数的应用。 #include class Point { public: Point(转载 2013-01-29 15:42:55 · 915 阅读 · 0 评论 -
htons(), ntohl(), ntohs(),htons() 函数
在C/C++写网络程序的时候,往往会遇到字节的网络顺序和主机顺序的问题。这是就可能用到htons(), ntohl(), ntohs(),htons()这4个函数。网络字节顺序与本地字节顺序之间的转换函数: htonl()--"Host to Network Long" ntohl()--"Network to Host Long" htons()转载 2012-06-14 16:42:11 · 819 阅读 · 0 评论 -
十六进制字符串(CString或char[]) 和 BYTE,char数组 相互转化
例如: CString sztmp = "40 40 50 65 "; BYTE char[3]; //如何把如上的sztmp 每两位为一个十六进制数放到 下面的char数据中 char[0] = 0x40; char[1] = 0x40; char[2] = 0x50; char[3] = 0x65; 方法:一:char[4]里面是16进制的数, 放到CString,char[100]数组中比较容原创 2011-05-18 14:24:00 · 6298 阅读 · 1 评论 -
浅拷贝和深拷贝:有什么区别
浅拷贝就是成员数据之间的一一赋值:把值赋给一一赋给要拷贝的值。但是可能会有这样的情况:对象还包含资源,这里的资源可以值堆资源,或者一个文件。。当值拷贝的时候,两个对象就有用共同的资源,同时对资源可以访问,这样就会出问题。深拷贝就是用来解决这样的问题的,它把资源也赋值一次,使对象拥有不同的资源,但资源的内容是一样的。对于堆资源来说,就是在开辟一片堆内存,把原来的内容拷贝。 如果你拷贝的对象中引用了某个外部的内容(比如分配在堆上的数据),那么在拷贝这个对象的时候,让新旧两个对象指向同一个外部的内容原创 2011-03-29 09:52:00 · 1154 阅读 · 0 评论 -
智能指针
Solmyr 的小品文系列之五:垃圾收集 转自pchome <br />午餐时间。 <br /><br />zero 坐在餐桌前,机械的重复“夹菜 -> 咀嚼 -> 吞咽”的动作序列,脸上用无形的大字写着:我心不在焉。在他的对面坐着 Solmyr ,慢条斯理的吃着他那份午餐,维持着他一贯很有修养的形象 ——— 或者按照 zero 这些熟悉他本质的人的说法:假象。 <br /><br />“怎么了 zero ?胃口不好么?”,基本填饱肚子之后,Solmyr 觉得似乎应该关心一下他的学徒了。 <br /><br转载 2011-05-13 16:51:00 · 622 阅读 · 0 评论
分享