РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1571 of 1593 menu

Константа runtime.Compiler

Константа runtime.Compiler возвращает строку, которая содержит название компилятора, использованного для сборки текущей программы. Она может принимать значения "gc" (стандартный компилятор Go), "gccgo" (компилятор GCC Go) или "gollvm" (компилятор LLVM Go). Эта константа полезна для написания кода, который должен по-разному работать в зависимости от используемого компилятора.

Синтаксис

runtime.Compiler

Пример

Давайте получим название компилятора, использованного для сборки программы:

package main import ( "fmt" "runtime" ) func main() { compiler := runtime.Compiler fmt.Println(compiler) }

Результат выполнения кода:

"gc"

Пример

Давайте используем константу для условной компиляции кода в зависимости от компилятора:

package main import ( "fmt" "runtime" ) func main() { if runtime.Compiler == "gc" { fmt.Println("Using standard Go compiler") } else if runtime.Compiler == "gccgo" { fmt.Println("Using GCC Go compiler") } else { fmt.Println("Using unknown compiler:", runtime.Compiler) } }

Результат выполнения кода:

"Using standard Go compiler"

Пример

Давайте используем константу для выбора оптимальной реализации в зависимости от компилятора:

package main import ( "fmt" "runtime" ) func main() { switch runtime.Compiler { case "gc": fmt.Println("Optimized implementation for gc") case "gccgo": fmt.Println("Optimized implementation for gccgo") default: fmt.Println("Generic implementation for:", runtime.Compiler) } }

Результат выполнения кода:

"Optimized implementation for gc"

Смотрите также

  • константу runtime.GOOS,
    которая возвращает название операционной системы
  • константу runtime.GOARCH,
    которая возвращает архитектуру процессора
  • функцию runtime.Version,
    которая возвращает версию Go
  • функцию runtime.NumCPU,
    которая возвращает количество логических процессоров
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить