站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        一起來分析為什么不能在PHP中使用泛型

        本篇文章給大家?guī)砹岁P于PHP的相關知識,主要介紹了為什么不能在PHP中使用泛型,下面將深入探討泛型和PHP背后的情況,理解為什么泛型還不被支持作為一等公民,希望對大家有幫助。

        一起來分析為什么不能在PHP中使用泛型

        推薦學習:《PHP教程》

        為什么我們不能在 PHP 中使用泛型

        我們將深入探討泛型和 PHP 背后的情況。理解為什么泛型在 PHP 中還不被支持作為一等公民,這非常有趣,并且非常重要。

        一起來分析為什么不能在PHP中使用泛型

        讓我們看看吧。

        PHP 中沒有泛型。這就是去年的 Nikita 的結(jié)論。這根本不可行。

        為了理解 Nikita 為什么這么說,我們需要看看如何實現(xiàn)泛型。一般來說,有三種可能的方法;支持泛型的編程語言大多使用這三種方法之一。

        第一個稱為 單態(tài)泛型。 讓我們回到這個系列的第一篇文章,在這篇文章中我展示了這個集合示例:

        class StringCollection extends Collection {     public function offsetGet(mixed $key): string      { /* … */ } } class UserCollection extends Collection {     public function offsetGet(mixed $key): User      { /* … */ } }

        我解釋了我們可以為需要的集合的每種類型,手動創(chuàng)建集合類的實現(xiàn)。 工作量將是巨大的,會有很多代碼,但是它會起作用。

        單態(tài)泛型正是這樣做的,但在幕后自動實現(xiàn)。 在運行時,PHP 不會知道泛型 Collection 類,而是知道兩個或多個特定實現(xiàn):

        $users = new Collection<User>(); // Collection_User $slugs = new Collection<string>(); // Collection_string

        單態(tài)泛型是一種完全有效的方法。例如,Rust 就使用它們。 其一個優(yōu)點是有一系列的性能提升,因為在運行時沒有

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 国产精品亚洲专区无码WEB | 精品国产热久久久福利| 亚洲AV无码久久精品蜜桃| 国产精品玖玖美女张开腿让男人桶爽免费看 | 综合人妻久久一区二区精品| 国产精品亚洲αv天堂无码| 国产精品一在线观看| 精品无码久久久久久尤物| 亚洲精品tv久久久久久久久| 亚洲AV无码成人精品区大在线| 国产在线观看一区二区三区精品 | 国产原创精品视频| 国产福利精品一区二区| 麻豆亚洲AV永久无码精品久久 | 国产在线精品观看免费观看| 老司机国内精品久久久久| 国产精品久久久久影视不卡| 国产suv精品一区二区33| 久久久久无码精品国产| 无码精品一区二区三区在线| 伊人久久精品无码二区麻豆| 中文字幕无码精品三级在线电影 | 国产精品免费看久久久| 日韩精品无码AV成人观看| 婷婷五月深深久久精品| 久久亚洲精品国产精品| 精品人妻中文字幕有码在线| 精品欧洲av无码一区二区三区| 精品国产粉嫩内射白浆内射双马尾| 精品永久久福利一区二区| 国产精品亚洲A∨天堂不卡 | 亚洲精品自产拍在线观看| 亚洲精品无码mv在线观看网站| 中文字幕久久精品| 十八18禁国产精品www| 精品无码人妻一区二区三区品 | 亚洲精品tv久久久久| 亚洲日韩精品无码专区网址| 日本VA欧美VA精品发布| 国产精品无码午夜福利| 国产精品中文字幕在线观看|