5 2 1 1 用元組代替 out 引數

2021-06-26 09:35:16 字數 704 閱讀 8265

5.2.1.1 用元組代替 out 引數

如果確實想,那麼,f# 也可以使用 out 引數,但是,元組通常是首選,因為,f# 自動將有 out 引數的 .net 方法暴露成返回元組的方法,因此,不需要做任何事情,完全是透明的。這就是說,f# **看起來仍然像慣用的函式**,即使呼叫的.net **沒有元組的概念。在 .net 中,最廣泛使用的、有 out 引數的方法可能是 tryparse,用於所有的數值型別,比如,int32;如果要在 f# interactive 中使用這個方法,首先需要開啟 system 命名空間。我們來看乙個在 c# 中使用的示例(使用out 引數):

int parsed;

bool success =int32.tryparse("41", out parsed);

以及 f#  的示例(使用元組)

let (success, parsed) = int32.tryparse("41");;

f# 版本寫起來相當容易,看起來更像「函式式」,因為,它避免了把引數值作為引用傳遞給可變的變數。在這個示例中,我們使用模式匹配,解析返回的元組;如果想完全忽略成功的標記,也可以使用 snd 函式,只挑選返回元組中的數值。當解析失敗時,返回的將是這個型別的預設值,即 0;另外,我們也可以寫乙個工具函式,指定預設值。我們將在下一章學習寫這樣的函式。

現在,在學習使用 f# 元組的最佳實踐之前,要暫時回到有關值與型別的討論,重溫元組型別,以及這些型別的值如何構造的。

用迴圈代替游標

在sql的sp開發中,游標有不可或缺的作用。但是,一些不當的使用游標,會造成嚴重系統效能的下降,所有呢,很多的人就想找乙個方法,即能達到游標的功能,又對效能影響小一些。這就是本文要講的用迴圈代替游標。一般情況下,用光標的目的就是要達到乙個迴圈,可是我們要是以迴圈來作呢,如何來控制當前的變數值就是關鍵...

文字超出用 代替

文字超出用 代替分兩種情況,一種是文字不換行,只在一行顯示,另一種是文字可以換行,但是最多顯示2行或3行 white spcae nowrap 強制讓文字不能換行 overflow hidden text overflow ellipsis overflow hidden text overflow...

用批處理建立OU和域使用者

在域環境下,有時候我們需要建立較多ou和使用者,如果手動乙個乙個是建立的話,相當煩鎖而且沒有效率,此時批處理就派上用場了,可以為我們節約了時間,另外還可以有效避免了一些錯誤。下面舉個例子建立ou和域使用者 dsadd ou ou lee,dc kk5234,dc com dsadd user cn ...