IDL对象编程手记
来源:互联网 发布:倚天屠龙指标源码破解 编辑:程序博客网 时间:2024/05/16 04:49
IDL支持面向对象的编程, 但是并不完整, 不支持对成员的可见性的设定.
可以通过定义单独文件的方式来定义IDL类, 比较容易管理, 定义的方式是:
pro <ClassName>__define
struct = {<className>, ...}
end
文件名是:<ClassName>__define.pro
在这个文件中, 还可以添加类成员函数的定义, 如:
pro <className>::hello
...
end
IDL不区分大小写, 所以类名/函数名/关键字等均可以不受大小写的限制
IDL对类提供一些专门的成员函数, 完成专用的任务. 比如: INIT为构造函数, CLEANUP为析构函数(在对象被释放时调用, 比如OBJ_DESTROY函数). 但是这些函数不能在外部被调用, 但是可以在函数内部看到, 主要是为了手工调用, 以实现父类的初始化函数被调用(IDL不会自动调用父类的INIT函数)
INIT函数可以带参数, 可以在调用OBJ_NEW生成对象时传入.
OBJ_NEW函数的调用形式如下:
Result = OBJ_NEW( [ObjectClassName [, Arg1......Argn]] )
IDL的函数和过程参数可以不完整, 比如函数A定义了5个参数, 可以用0-5个参数来调用. 对调用的参数情况可以用N_PARAMS和N_ELEMENTS来判断, 前者可以得到实际的调用参数的个数, 后者可以判断某个参数是否有值
sub Test::INIT, caption
print, N_PARAMS() ;返回参与调用的参数个数
print, N_ELEMENTS(caption) ;返回1为有值, 返回2为未定义
...
end
可以定义多个同名函数, 但只有最晚定义的那个有效, 前面的会被隐藏
- IDL对象编程手记
- IDL高效编程技巧
- IDL编程小技巧
- IDL
- IDL
- IDL
- IDL
- 临时对象研究手记
- IDL学习笔记(1)--可视化组件编程
- CORBA 及Java IDL应用编程
- IDL与C#混合编程技术
- IDL与C#混合编程技术
- python socket 编程手记
- 服务端编程手记
- linux 网络编程手记
- Java3D编程手记一
- linux网络编程手记
- linux网络编程手记
- 小谈产品模块及BUG管理
- ?????????这是干什么用的?
- javascript相关帮助
- 试验一下
- 暗黑项目管理
- IDL对象编程手记
- MSN机器人梦工厂(3)
- 今天考032
- 介绍一款强大的文档搜索工具——grep
- 领到我的第一份正式的工资~
- 怎么在win2000下进入dos?
- md5
- 网管员的任务与职责漫谈
- 每个人都可以被人代替,在工作上,在别人心上。(伏契克)