我應該快有一年工作經驗,雖然畢業才沒有幾天。 一點都不傷感,因為沒有感覺,一直都在工作。
我的工作前段時間主要給寫IDL接口(下個月開始投向GIS開發),主要是AUTOCAD的接口,我公司用teigha的庫。
不得不說代碼寫的真的漂亮,幫助文檔也寫的很好。
IDL 資料本身就很少,IDL 接口資料就幾乎就一本老外的書籍,而且版本比較老了,所以難度還是有一點的。
我現在對IDL接口應該是比較熟練,如果你遇到一些問題,可以問我,maybe我是知道的。
好了,說一下正題。
在IDL中大量使用關鍵字,所以我們在開發IDL接口當中用到關鍵字也是非常多的。
我就不分析關鍵字的原理了,因為快要下班了。
最新版關鍵字用法和以前老版本不一樣所以需要注意。
例子代碼在幫助文檔有。
現在我覺一個例子
現在我們定義關鍵字的IDL_KW_PAR
static IDL_KW_PAR kw_pars[] = {
{“BLOCK”,IDL_TYP_STRING,1,0,(int*)IDL_KW_OFFSETOF(block_there),(char*)IDL_KW_OFFSETOF(Block)},
{"INDEX",IDL_TYP_LONG,1,0,(int*)IDL_KW_OFFSETOF(index_there),(char*) IDL_KW_OFFSETOF(index),
{NULL}
};
這里就定義好了 IDL_KW_PAR.
注意一個問題,BLOCK 和 INDEX 定義順序有講求。
你必須要把BLOCK放到INDEX上面。
因為B < I 。
如果沒有按照這樣順序聲明你就使用關鍵字就會出現不能分配關鍵字。
因為這個必須 按照 in LEXICAL order (詞法順序來弄)。
你會覺得這個非常好笑,但卻是是這樣的,這個在idl help 里面是沒有說明的。
這個是我在分析export.h 發現問題解決方法。
我就簡單說到這里吧。
如果你想知道IDL 怎么在結構體里面傳遞 IDL_VPTR 或者 怎么返回動態的數據 或者 === 或者 一些DWG的東西也可以找我哦。
其實我想說我擅長網絡開發行不呢!!!!!
My QQ 群:274301756
速度下班,我IT 但我從來不加班。。。
posted on 2013-06-25 17:34
小魚兒 閱讀(2614)
評論(2) 編輯 收藏 引用