五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Vim9 和Vim腳本的差異(Vim9函數(shù)和變量)

2023-04-27 18:53 作者:北壹啊  | 我要投稿


  • 用?def?定義的函數(shù)是編譯的。執(zhí)行速度快很多倍,經(jīng)常10到100倍。

  • def函數(shù)總會在錯誤時自動abort。

  • 將來會增加類。取代“dict函數(shù)”機(jī)制。
    如今呢,需要顯式地傳遞字典。(暫時字典當(dāng)對象用,vim9的ad.func其實(shí)是ad[func],ad.item其實(shí)是ad[item])

比如這里ad.func是函數(shù)(func這個key的value),ad.item是數(shù)據(jù)成員(item這個key的value)
  • 函數(shù)必須指定 參數(shù)類型和返回類型。 “any”類型可以被使用,然后類型檢查將在運(yùn)行時完成,就像以前的老式函數(shù)一樣。There is no "a:" dictionary or "a:000" list。(舊Vim腳本的函數(shù)里,需要a:訪問函數(shù)內(nèi)變量,a:000表示整個函數(shù)的實(shí)參列表)

  • list類型,例如,一個數(shù)字列表(有點(diǎn)像C++里的容器模板)

  • 當(dāng)函數(shù)參數(shù)是可選的(它有一個缺省值)時傳遞 `v:none`,導(dǎo)致它使用缺省值

  • 參數(shù)“_”(下劃線)可用于忽略該參數(shù)。

  • 函數(shù)和變量默認(rèn)是script-local 的

    在 Vim9 腳本中,該函數(shù)是腳本的script-local?函數(shù)。就像遺留腳本使用 前綴“s:”描述的。要定義全局函數(shù)或變量,“g:”前綴必須使用

  • 腳本里要被別人導(dǎo)入和在自動載入腳本定義的函數(shù),需要使用"export",才能被別處使用。

  • 局部變量需用 `:var` 定義。局部常量需用 `:final` 或 `:const` 定義。我們把兩者都稱為 "變量"。

  • 變量可以局部于腳本、函數(shù)或代碼塊

  • 變量只在定義所在的塊和嵌套塊中可見。塊定義結(jié)束后,變量不再可訪問

  • 變量必須在使用之前進(jìn)行聲明:

簡單值有更簡短和更快的方法:聲明的同時初始化。

簡單值有更簡短和更快的方法:聲明的同時初始化。

  • Vim9 腳本中不能用 `:let`。已有的變量可直接賦值,不需要任何命令。

  • 全局變量必須帶上 "g:" 前綴。

  • 全局函數(shù)必須帶上 "g:" 前綴

  • 使用?:const?可以同時將變量和其value設(shè)置為不可修改,適用于希望確保不會被修改的復(fù)合結(jié)構(gòu)。

  • 使用?:final?可以將變量設(shè)置為不可修改,但是可以更改其value。

    • const 限制只適用于value本身,而不限制其value引用的value。

    • 可以使用 myList->add(123) 來調(diào)用 myList 列表對象的 add 方法,而不需要使用 eval("myList->add(123)")。這種用法可以提高代碼的可讀性和簡潔性。但需要注意,此方法只能在方法名開頭是標(biāo)識符或不能被解釋為 Ex 命令時使用。

    • Lambda表達(dá)式??使用?=>?而不是 ->

    lambda表達(dá)式寫法

    ?????????lambda 表達(dá)式的參數(shù)部分與箭頭符號 "=>" 之間不允許換行,以便 Vim 可以區(qū)分括號中的表達(dá)式和 lambda 表達(dá)式。實(shí)際例子:

    • 可變參數(shù):使用 "..._",它會讓函數(shù)接受可變參數(shù)。例如:

    此外,匿名函數(shù)可以包含 {} 包圍的多個語句

    lambda表達(dá)式,使用花括號包圍多個語句。



    Vim9 和Vim腳本的差異(Vim9函數(shù)和變量)的評論 (共 條)

    分享到微博請遵守國家法律
    临湘市| 陇川县| 彭阳县| 尼玛县| 龙川县| 定结县| 昭苏县| 武城县| 华蓥市| 闻喜县| 林西县| 龙山县| 扬中市| 峨山| 象山县| 郧西县| 筠连县| 运城市| 富宁县| 昌江| 定州市| 房山区| 布拖县| 民乐县| 交城县| 临安市| 江华| 崇文区| 靖宇县| 天长市| 奎屯市| 尉犁县| 延边| 门源| 姚安县| 禄丰县| 应用必备| 沧州市| 道孚县| 宜兴市| 衡南县|