一、关于const类成员函数有以下几个需要注意的地方:1. 在普通的非const成员函数中,this的类型是一个指向类类型的const指针,而const成员函数中,this的类型是一个指向const类类型对象的const指针。由于这个原因:(1) 返回值 函数名 (参数列表) const {…} 这...
分类:
其他好文 时间:
2014-08-12 12:50:34
阅读次数:
166
类的成员函数后面加 const,表明这个函数不会对这个类对象的数据成员(准确地说是非静态数据成员)作任何改变。 在设计类的时候,一个原则就是对于不改变数据成员的成员函数都要在后面加 const,而对于改变数据成员的成员函数不能加 const。所以 const 关键字对成员函数的行为作了更加明确的限....
分类:
其他好文 时间:
2014-08-12 10:06:53
阅读次数:
199
在STL标准库中除了提供常规的函数配接器外,还提供了两个针对成员函数的函数配接器,其主要功能是通过这些配接器,你可以针对每一个元素直接去调用其成员函数。
这样的成员函数配接器有两个,分别是:
mem_fun_ref(op)
调用对象的成员函数op
mem_fun(op)
调用对象指针的成员函数op
这两个函数配接器都是去调用对象中的成员函数op,对于这两个成员函数,以前是只能调用对象的...
分类:
其他好文 时间:
2014-08-12 00:46:03
阅读次数:
193
在C语言里,我们可以通过函数printf和scanf来进行格式化控制。而在C++中仍然包含了前者,但还提供了以下两种格式控制的方法:(1)使用流成员函数进行格式控制;(2)使用预定义操作符进行格式控制。下面我来一一介绍:
1.流成员函数主要是指ios类(流基类)中的,分别有:
(1).设置状态标志流成员函数setf
一般格式:long ios::setf(long flags),调用格式...
分类:
编程语言 时间:
2014-08-11 15:12:32
阅读次数:
343
Effective STL 中文版学习记录条款4 判断容器是否为空 使用empty而不是size().size()操作在实现上不是一个时间常数操作条款5 尽量使用区间成员函数代替它们的单元素兄弟.STL实现中,区间范围显示比单个循环操作更优化条款7:当使用new得指针的容器时,记得在销毁容器前del...
分类:
其他好文 时间:
2014-08-11 14:48:02
阅读次数:
191
这片文章将详细分析WindowState中的各个关键成员变量及成员函数。
1、Session类对象mSession
每一个WindowState都有一个Session类成员变量,那么每一个窗口保存的都是同一个mSession吗?还是每一个窗口的mSession都不同呢?dump一下便知道了,dump日志告诉我上述两种情况都不是,事实上是每一个UI进程的所有窗口保存的是同一个Session,而每...
如果试图直接使用C++的成员函数作为回调函数将发生错误,甚至编译就不能通过。其错误是普通的C++成员函数都隐含了一个传递函数作为参数,亦即“this”指针,C++通过传递this指针给其成员函数从而实现成员函数可以访问C++的数据成员。这也可以理解为什么C++类的多个实例可以共享成员函数却-有不同的...
分类:
编程语言 时间:
2014-08-10 21:27:31
阅读次数:
350
本文试图解释c++ primer Screen 和 Window_Mgr的例子,为什么将两个类放在两个文件中无法编译?将两个类写在同一个文件中,通过三个例子解释问题:第一种写法问题:编译到Screen时,由于Screen类使用到Window_Mgr的成员函数,虽然前面给出了Window_Mgr的声明...
分类:
数据库 时间:
2014-08-10 18:29:40
阅读次数:
253
如果确信一个成员函数不用修改它的对象,就可以声明它为const,这样就可以作用于他的const对象了.因为const对象只能调用它的const方法. 1 template class Vector 2 { 3 public: 4 int length() const//如果这里没有const...
分类:
其他好文 时间:
2014-08-10 15:27:10
阅读次数:
179
我们首先从一个问题来阐明类的底层机理:
假如有一个类A,里面有一个成员函数get(),例如:
class A
{
public:
void get();
}
A a;
那么a.get()表示什么呢?首先给出答案是get(&a),因为在类的底层机制中,成员函数的第一个参数都是一个指向该类数据结构的指针(静态成员函数除外),所以成员函数get()的存在形式为void g...
分类:
编程语言 时间:
2014-08-10 01:48:19
阅读次数:
233