黑马程序员技术交流社区
标题:
为何我不能在一个类的方法里调用另一个类的静态方法?
[打印本页]
作者:
可见
时间:
2012-3-10 12:27
标题:
为何我不能在一个类的方法里调用另一个类的静态方法?
但是直接在函数里调用就可以?
可能没怎么说清楚,附代码:
当我直接在函数里调用:
void DoSHAExecution ( ) throw()
{
// Create Callback
IShaCallbackPtr callback = NULL;
callback = ShaCallback::CreateInstance(binding);
.....
}
是正常的。
当时当我把它写在类方法里:
void Sha::DoSHAExecution (WriteEventLog * writeEventLog,WCHAR action) throw()
{
// Create Callback
IShaCallbackPtr callback = NULL;
callback = ShaCallback::CreateInstance(binding);
....
}
报错看图
1.bmp
(106.72 KB, 下载次数: 128)
下载附件
2012-3-10 12:27 上传
作者:
lucky_xingxing
时间:
2012-3-10 16:20
你这个 两个冒号是 什么东西啊 从来没见过
作者:
贠(yun)靖
时间:
2012-3-10 16:45
static使用注意事项
静态方法
只能访问静态成员变量和方法。
静态方法中不可以定义this,super关键字,因为静态优先于对象存在。
优点:对对象的共享数据进行单独空间存储,节省空间,没必要每一个对象都存储份。
缺点:生命周期过长。访问出现局限性(静态只能访问静态的)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2