国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

參數傳遞的幾種用法。

2024-07-21 02:09:07
字體:
來源:轉載
供稿:網友

參數傳遞的幾種用法。

一次需要在幾個窗口之間傳遞參數,最開始想到的是定義一個全局變量。

可以做了以后發現并不太理想。

最后向別人學習了參數傳遞,解決了很多問題,感覺上也不容易出錯。

現在寫出來與大家分享,也為自己保留,以便察看。
-----------------------------------------------------------
先來解釋一下參數傳遞的函數意義:
message.stringparm  (傳的是字符)
message.doubleparm   (傳的是數值)
message.powerobjectparm (傳的是可以是窗口、對象、結構等等)
例如:(以數值傳遞為例)
在w_old窗口的相關事件中寫入如下代碼,表示發送要傳遞參數:
long ll_old
ll_old = 你要傳遞的數值
openwithparm(w_new(//新窗口),ll_old)
------------
在w_new窗口(新窗口)的相關事件中寫如下代碼表示接受參數:
long ll_new
ll_new = message.doubleparm /*這樣就接收到了你要的參數了。*/
-----------------------------------------------------------

上面只是一個參數的傳遞,
對于多參數的傳遞,說是有3種方法:
      1.用字符傳組傳遞,到目的地進行分割
      2.傳遞結構對象
      3.用對象做載體傳遞 
我現在掌握的也就前兩種,最后一種我不太理解。以后會了再補充。

現在先來說:1.用字符傳組傳遞,到目的地進行分割
意思也就是說,把多個參數組合成一個進行傳遞,
組合的時候需要加入分割符---自己定義的。接收參數后再將其分割成多個。
*在w_old窗口的相關事件中寫入如下代碼:
/*例如組合好的自符串為pass_old="123|4567"  ---注意組合前123和4567
可能都是long型的,不要緊,轉換類型就行*/
string pass_old
pass_old =string(ll_pre) + "|" + string(ll_tra)
// ll_pre = 123,ll_tra = 4567
openwithparm(w_new(//新窗口),pass_old)
----------
*在w_new窗口(新窗口)的相關事件中寫如下代碼:
integer li_fen /*定義用來記錄分割符的位置*/
long ll_newpre,ll_newtra /*用來分別存放兩部分*/
string pass_new
pass_new = message.stringparm

li_fen=pos(pass_new,"|") /*確定并記錄分割符的位置*/

ll_newpre=long(left(pass_new,li_fen - 1))

ll_newtra=long(right(pass_new,len(pass_new) - li_fen))

/* 上面就是第一種方法-----用字符傳組傳遞,到目的地進行分割*/
--------------------------------------
在來說說:2.傳遞結構對象
在庫文件中 創建一個structure對象,注意是創建,因為它就象一個窗口一樣
是個對象,不是用與句定義的。structure s_info
  變量名      變量類型
  id         long
  name        char
    sex         char
/* 先以此為例。 */
**在w_old窗口的相關事件中寫入如下代碼:
s_info lstr_pre
lstr_pre.id = 1 /* 賦id的值
lstr_pre.name = "zhdleo"  /* 賦name的值
lstr_pre.name = "male"  /* 賦sex的值
openwithparm(w_new(//新窗口),lstr_pre)
**在w_new窗口(新窗口)的相關事件中寫如下代碼:
s_info lstr_tra
long tra_id
string tra_name
string tra_sex /* 定義要接收的變量

lstr_tra = message.powerobjectparm /* 接收參數
tra_id = lstr_tra.id 
tra_id = lstr_tra.name
tra_id = lstr_tra.sex /* 賦值

/* 上面就是第二種方法------傳遞結構對象
-------------------------------------------
我個人覺得第二種方法還是非常優的,不但結構清楚,而且定義了結構體也
可以看見,容易理解。

至于第三種,還有待我慢慢研究。

如果誰還有好的方法,或是比較清楚第三種的,或是還有更好的方法的,
請e-mail:[email protected]
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中超| 成都市| 四子王旗| 丰台区| 长子县| 永昌县| 塔城市| 玉溪市| 贵南县| 即墨市| 昌黎县| 南漳县| 肃北| 开封县| 区。| 长阳| 锡林郭勒盟| 高密市| 贺州市| 湾仔区| 东丽区| 普陀区| 扎兰屯市| 天气| 东山县| 乌拉特中旗| 岱山县| 平原县| 微博| 当阳市| 囊谦县| 依兰县| 全州县| 巴彦县| 高唐县| 永定县| 盘锦市| 苏尼特左旗| 尉犁县| 大方县| 凌云县|