• 5124阅读
  • 2回复

Linux下qpe源码中的疑问 [复制链接]

上一主题 下一主题
离线taomic
 

只看楼主 倒序阅读 楼主  发表于: 2008-08-20
— 本帖被 XChinux 执行加亮操作(2008-08-20) —
qpe源码中 qtopia-free-1.7.0/src/server/applauncher.cpp  第122行 开始

if(qlPid){
  int status;
  ::kill(qlPid,SIGTERM);    //-------------这一句
  waitpid(qlPid,&status,0); //-----------还有这一句
}

还有一句:
runningApps[::getpid()] = tmp;    // 第109行

双冒号是什么意思?
如果是调用系统函数,为什么kill要带而waitpid不带?
双冒号和函数是作为一个整体吗?
这是C++中的语法还是QT中的,或是Linux C 所特有的?

哪位大侠分析过qpe的源码啊,能不能交流一下。十分感激!
离线icevi

只看该作者 1楼 发表于: 2008-08-22
双冒号应该是用来调用虚函数,双冒号前如果没有对象,应该就是调用当前对象的这个虚函数。
比如myWidget继承了xWidget,我可以在myWidget中用xWidget::xxxx()来运行xWidget中xxxx函数的代码。如果前面不加xWidget,就会是调用myWidget中重写过的xxxx。
应该是这个意思,呵呵。C++语法就是这样的,跟QT或平台无关。
====================
www.bilive.com
BiForm BiReader BiChat
最爱QT和PYTHON
====================
离线taomic

只看该作者 2楼 发表于: 2008-08-22
上面所用到的几个函数都是Linux的系统函数,并不是属于哪个QT类的。虽然说得不是很明白,但还是谢谢一楼的回复。
快速回复
限100 字节
 
上一个 下一个