首页
社区
课程
招聘
[求助]若干问题,诚心求教!
发表于: 2006-8-13 17:50 4437

[求助]若干问题,诚心求教!

2006-8-13 17:50
4437
若干问题,诚心求教!
1.看到有些程序里API函数前加了"::"符号,为什么要加域控制符?什么情况下要加,而什么情况下可以不加?
2.有一结构体,结构体有一成员指向一个自编的函数,怎样
通过访问结构体来调用这个函数呢?又怎样来传递参数呢?即,如何用C实现类似于C++中类的成员函数的调用方式,如class1.fn(param).

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 270
活跃值: (176)
能力值: ( LV12,RANK:370 )
在线值:
发帖
回帖
粉丝
2
MFC对Windows Api进行了封装,参数和Windows API可能不一样,好象使用缺省的HANDLE,HWND参数这样的比较多见.如
SendMessage
GetWindowText
如果想给特定的进程发送消息,或者读取指定的窗口控件的文字,就要用Windows  API,前面要加域符号::,表示用的是全局域的Windows API函数.

C中的结构体内是不能有函数的,C++里面才可以,和Class的调用方法一样的.
2006-8-14 02:53
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
全局域的API函数(native API)??
这种说法好像不恰当吧
2006-8-14 10:19
0
雪    币: 194
活跃值: (71)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
加:: 好象就是直接调用系统API吧.

结构体中应该可以有指向函数的指针吧.
2006-8-14 12:09
0
雪    币: 270
活跃值: (176)
能力值: ( LV12,RANK:370 )
在线值:
发帖
回帖
粉丝
5
说的不清楚
我的意思是C的结构体中是不能定义函数的,包含指向函数的指针是可以的.一个小小的例子:
#include <stdio.h>

typedef int (*PF)(int, int);

struct T
{
int a;
PF pFun;  
};

int add(int a, int b)
{
    return a + b;
}

int main()
{
T   test;

test.pFun = add;
      
printf("%d", test.pFun(2, 3));
   
return 0;
}
2006-8-14 12:50
0
雪    币: 270
活跃值: (176)
能力值: ( LV12,RANK:370 )
在线值:
发帖
回帖
粉丝
6
最初由 xszhou 发布
全局域的API函数(native API)??
这种说法好像不恰当吧

确实说错了
2006-8-14 13:15
0
雪    币: 255
活跃值: (11)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
感谢ikki的帮助!
2006-8-19 14:43
0
游客
登录 | 注册 方可回帖
返回
//