首页 > 编程 > C++ > 正文

如何将C/C++程序转译成Delphi(七)

2019-11-18 18:50:18
字体:
来源:转载
供稿:网友

Here is a real-world example from the winnt.h, which is not possible to translate to a native enumerated type:

//// Start Type//#define SERVICE_BOOT_START             0x00000000#define SERVICE_SYSTEM_START           0x00000001#define SERVICE_AUTO_START             0x00000002#define SERVICE_DEMAND_START           0x00000003#define SERVICE_DISABLED               0x00000004//////typedef enum _CM_SERVICE_LOAD_TYPE {    BootLoad    = SERVICE_BOOT_START,    SystemLoad  = SERVICE_SYSTEM_START,    AutoLoad    = SERVICE_AUTO_START,    DemandLoad  = SERVICE_DEMAND_START,    DisableLoad = SERVICE_DISABLED} SERVICE_LOAD_TYPE;

The ordinal values of the items in the enumeration SERVICE_LOAD_TYPE depend on the constants declared above it. This is not possible in Delphi. The only way to translate it is:

//// Start Type//CONST  SERVICE_BOOT_START = $00000000;  SERVICE_SYSTEM_START = $00000001;  SERVICE_AUTO_START = $00000002;  SERVICE_DEMAND_START = $00000003;  SERVICE_DISABLED = $00000004;  //  //  //CONST  BootLoad = SERVICE_BOOT_START;  SystemLoad = SERVICE_SYSTEM_START;  AutoLoad = SERVICE_AUTO_START;  DemandLoad = SERVICE_DEMAND_START;  DisableLoad = SERVICE_DISABLED;TYPE  TServiceLoadType = DWord;


Back to contents


上一篇:如何将C/C++程序转译成Delphi(八)

下一篇:如何将C/C++程序转译成Delphi(六)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
学习交流
热门图片

新闻热点

疑难解答

图片精选

网友关注