![]() |
1
9
指向成员的指针或指向成员函数的指针的最大优点是
这可用于回调或抽象算法:
注意,boost.bind、boost.function和它们的tr1等价物已经很好地为您封装了它。在某种程度上,现行标准还包括以下工具:
|
![]() |
2
2
如果您使用了MFC,您将看到大量使用了指向成员函数概念的指针(内部) 声明消息映射,开始消息映射,结束消息映射 见 Message Maps |
![]() |
3
0
我想的问题是:“指向成员数据的指针加上指向数据的简单指针是什么?”我能想到的唯一答案是一个明确意义的层次:我们指的是 这 班级。 现在,我可以看到一些有价值的东西,实际上是一些附加的意图文档。我看到的一个例子可能非常强大,那就是当我们的“类”实际上是一个遗留的C结构时。现在我们没有该结构的本地方法,所以有一些与该结构显式关联的指针可能会使代码更清晰。 |
![]() |
4
0
指向成员的指针和所有C++特性一样,只是在纯C中已经完成的语法糖。 指向成员变量的指针非常简单。一个用例是,如果您想编写一个(模板)函数,它可以按任何字段对结构数组进行排序。通过向成员传递指针,您可以检索结构任何实例的某些指定字段,而无需对该字段进行硬编码。当然,可以使用接受结构指针并返回字段值的函数。 指向成员函数的指针有点复杂。乍一看,它们就像普通的函数指针,知道如何传递隐藏的“this”指针。但是虚拟函数使一个简单的概念变得相当复杂。 而虚拟基类使指向成员的所有指针变得非常复杂。这不是你想用简单的C结构自己编写代码的事情。但这些复杂的病例是罕见的。 |
![]() |
Schadre · C-plus编码错误 2 年前 |
![]() |
Nithin K · 即使类属性的类型正确,也会获取异常 2 年前 |
![]() |
amirreza870 · Python OOP-更改类文本 3 年前 |
![]() |
A_K · 使用cat或打印方法打印部分内容的子集闭包 3 年前 |
![]() |
Mo Fatah · 如何使用Python类打印数独板? 3 年前 |