站長資訊網
        最全最豐富的資訊網站

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

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

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

        推薦學習:《PHP教程》

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

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

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

        讓我們看看吧。

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

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

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

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

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

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

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

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

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 少妇精品久久久一区二区三区| 一本大道无码日韩精品影视| 久久久精品日本一区二区三区 | 国产精品午夜一级毛片密呀 | 久久精品国产第一区二区三区| 精品99久久aaa一级毛片| 99在线精品一区二区三区| 亚洲精品无码不卡在线播HE| 久久精品国产亚洲精品| 国产999精品久久久久久| 99久久免费国产精精品| 老司机亚洲精品影院无码| 亚洲国产综合精品中文字幕| 国产在线精品一区二区三区不卡| 国产精品你懂得| 国产精品无套内射迪丽热巴| 亚洲精品高清无码视频| 日韩精品一二三四区| 国产综合色产在线精品| 91精品视频观看| 亚洲愉拍自拍欧美精品| 欧美一区二区精品| 国产精品青草久久久久婷婷| 国产99视频精品免费专区| 精品欧洲AV无码一区二区男男| 亚洲精品无码久久久久| 亚洲精品美女久久777777| 真实国产乱子伦精品视频| 亚洲情侣偷拍精品| 中文字幕精品视频在线| 亚洲人成国产精品无码| 亚洲综合国产精品第一页 | 国产69精品久久久久99| 97精品国产高清自在线看超| 欧美精品国产日韩综合在线| 久久国产亚洲精品麻豆| 久久亚洲欧美日本精品| 66精品综合久久久久久久| 91精品啪在线观看国产电影| 国产精品免费久久久久久久久 | 亚洲av永久无码精品网站 |