从 VapourSynth API 到 C++ 基础知识
副标题:从 C + isotream 到 C++
(这是1月底写一点随笔,然后就被丢到一边不管了)
智能指针
全面讲述智能指针的文章:https://juejin.im/post/5dcaa857e51d457f7675360b
熟悉的unique_ptr
,是“拥有独有对象所有权语义的智能指针”。
智能指针的释放
一个基本概念,要用.
而非->
。(https://blog.csdn.net/delphicui/article/details/4213811)
1 |
|
在 VapourSynth Plugin 的编写时,要在Free()
函数里写delete d;
,但又在Create()
函数里写了d.release()
。可不可以这么理解,智能指针d
在Creat()
函数里被声明,所以要在Create()
函数内释放一次,但其他地方也用到了d
,所以又要写一次delete d
?我感觉我在胡说八道
智能指针与数组
用智能指针创建数组,类似下面这样。
1 |
|
而且用后并没有释放,这是自然,毕竟智能指针的本意即是如此。
但我不知道,对于查表用的大数组,有没有必要“升级”成智能指针,对于使用new
创建的指针呢?
com组件
(被淘汰的技术)
(我不知道 VapourSynth API 里的 com 是不是这个 com)
lamda表达式
(额外延伸的,稍后再看)