智能指针的删除器能改写为哪种长尾词?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1141个文字,预计阅读时间需要5分钟。
智能指针有unique_ptr(独占指针)和shared_ptr(共享指针)。
unique_ptr独占式指针,只能由一个智能指针管理资源。
shared_ptr共享式指针,多个智能指针可以共享同一资源。
智能指针有unique_ptr(独占指针),shared_ptr(共享指针)。
unique_ptr独占式指针,只能由一个智能指针拥有管理指针资源。
shared_ptr则是共享式指针,多个指针对象可以共享同一个指针资源。
C++中,智能指针本质上就是类模板,可以通过定义一个自定义的删除器(Deleter)来指定智能指针在析构时释放资源的方式。智能指针中的删除器可以是一个函数对象(函数指针),函数符或者是Lambda表达式。
函数指针:
函数指针是指向函数的指针变量,可以存储一个函数的入口地址,通过调用该指针变量就可以实现对被指向函数的调用。使用函数指针最常用的场景是作为回调函数,也可以用于实现函数指针数组、函数指针作为函数参数等特殊功能。
// 声明一个返回值为int,带两个int类型参数的函数指针
int (*pfunc)(int, int);
在这个例子中,`int (*pfunc)(int, int)`表示定义了一个指向返回值为int类型、带两个int类型参数的函数指针。我们可以将pfunc指向符合这个函数类型的函数,调用该函数指针时,实际上就是调用被指向函数。
本文共计1141个文字,预计阅读时间需要5分钟。
智能指针有unique_ptr(独占指针)和shared_ptr(共享指针)。
unique_ptr独占式指针,只能由一个智能指针管理资源。
shared_ptr共享式指针,多个智能指针可以共享同一资源。
智能指针有unique_ptr(独占指针),shared_ptr(共享指针)。
unique_ptr独占式指针,只能由一个智能指针拥有管理指针资源。
shared_ptr则是共享式指针,多个指针对象可以共享同一个指针资源。
C++中,智能指针本质上就是类模板,可以通过定义一个自定义的删除器(Deleter)来指定智能指针在析构时释放资源的方式。智能指针中的删除器可以是一个函数对象(函数指针),函数符或者是Lambda表达式。
函数指针:
函数指针是指向函数的指针变量,可以存储一个函数的入口地址,通过调用该指针变量就可以实现对被指向函数的调用。使用函数指针最常用的场景是作为回调函数,也可以用于实现函数指针数组、函数指针作为函数参数等特殊功能。
// 声明一个返回值为int,带两个int类型参数的函数指针
int (*pfunc)(int, int);
在这个例子中,`int (*pfunc)(int, int)`表示定义了一个指向返回值为int类型、带两个int类型参数的函数指针。我们可以将pfunc指向符合这个函数类型的函数,调用该函数指针时,实际上就是调用被指向函数。

