函数前面加上static 有什么作用呢?在一般函数前面加上static 和类中的成员函数中加上static 管什么用?
解决方案 »
- 窗口被挡住,还能获得某个坐标的像素值吗?
- 如何在一个类中改变另外一个类中设置的变量
- 一个继承自CWnd的类的函数的目的
- 请问在CListCtrl在使用了InsertItem函数与SetItemText函数加入了一条记录后为什么显示不出来?
- VC++,My God!
- 帮帮忙!
- 希望得到大家的帮助
- VC通讯录的制作
- 欢迎讨论,怎样真正将进程隐藏起来?
- GetCurrentProcess 伪句柄有什么用?请详细举例
- 请问我用LoadImage API从硬盘上加载了一个BMP图像,得到了该位图的句柄,请问用什么API能把他显示到Form1上呢?
- 怎么样使鼠标一放在Cedit控件上就显示提示信息 如显示"输入日期00-00-00"
就可以对他初始化,他是有该类的所有对象公共来维护,不是属于每一个对象的
他的内存分配在heap中的,而非在stack中的
静态成员函数正如linux2001所言。
class A
{
public:
static void test()
};a.cpp
#include "a.h"
static void A::test()
{
printf("test\n");
}b.cpp
#include "a.h"
void main()
{
A::test(); //没有建立一个A对象,但是可以调用A类的静态成员。
}
memberFxn(pObj,...),所以在它内部使用的是调用对象的数据.
静态成员函数没有隐含的this指针,基调用方式跟一般的全局函数是一样的.所以,它无法隐式地取某个对象的成员数据,因此,在它内部只能出现类的静态成员变量.采用静态成员函数的理由很简单:有些时候我们没有必要非要针对该类的某个对象进行操作.例如static CWnd::FromHandle(HWND hWnd),函数所要知道的仅一个hWnd即可,再给它一个this毫无意义,所以就用static