Что такое IntegerType? - PullRequest
       2

Что такое IntegerType?

0 голосов
/ 18 сентября 2018

Я увидел ядро ​​Голанга и нашел это:

func make(t Type, size ...IntegerType) Type

Что означают IntegerType и Type?Это может быть C +?

Ответы [ 2 ]

0 голосов
/ 18 сентября 2018

Целочисленный тип:

IntegerType здесь только для целей документации.Он заменяет любой целочисленный тип: int, uint, int8 и т. Д.

Пример: type IntegerType int

Тип:

Тип здесь только для целей документации.Он является заменой для любого типа Go, но представляет тот же тип для любого данного вызова функции.

Пример: type Type int

Согласно документу go document

0 голосов
/ 18 сентября 2018

Ваше объявление функции из пакета builtin, builtin.make()

func make(t Type, size ...IntegerType) Type

, что IntegerType ссылается на: builtin.IntegerType:

IntegerType здесь только для целей документации.Это замена для любого целочисленного типа: int, uint, int8 и т. Д.

Таким образом, он служит для документирования .Поскольку в Go нет обобщений, каждый тип, который используется в объявлении, должен быть «реальным» типом (а не параметром типа).Но большинство встроенных функций special , они позволяют передавать значения нескольких типов (или даже «имен»).

Чтобы выразить / задокументировать это, пакет builtin используетIntegerType как «псевдо» тип, собирательный тип для любого целочисленного типа.

Аналогично, Type ссылается на builtin.Type:

Тип здесь только для целей документации.Он является заменой для любого типа Go, но представляет тот же тип для любого данного вызова функции.

Это также для целей документации .Это также «псевдо» тип, который может заменить любые типы, но Go не поддерживает обобщенные выражения для выражения этого с использованием допустимого синтаксиса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...