Функции в Go Программировании

Beginner

This tutorial is from open-source community. Access the source code

Введение

В этом практическом занятии мы узнаем о функциях в Go. Мы рассмотрим, как определить функции, как передавать им аргументы и как возвращать из них значения.

Функции

В приведенном коде есть две функции plus и plusPlus. Функция plus принимает два целых числа в качестве аргументов и возвращает их сумму. Функция plusPlus принимает три целых числа в качестве аргументов и возвращает их сумму. Ваша задача - завершить функцию plusPlus, добавив третье целое число к сумме первых двух целых чисел.

  • Функция plus должна принимать два целых числа в качестве аргументов и возвращать их сумму в виде целого числа.
  • Функция plusPlus должна принимать три целых числа в качестве аргументов и возвращать их сумму в виде целого числа.
  • Функция plusPlus должна использовать функцию plus для вычисления суммы первых двух целых чисел.
$ go run functions.go
1+2 = 3
1+2+3 = 6

## В Go функция имеет несколько других возможностей.
## Одна из них - это возврат нескольких значений,
## о которых мы поговорим далее.

Ниже представлен полный код:

// _Функции_ являются центральной частью Go. Мы узнаем
// о функциях на нескольких различных примерах.

package main

import "fmt"

// Вот функция, которая принимает два `int` и возвращает
// их сумму в виде `int`.
func plus(a int, b int) int {

    // Go требует явного возврата значения, то есть
    // не будет автоматически возвращать значение
    // последнего выражения.
    return a + b
}

// Когда у вас несколько последовательных параметров
// одного типа, вы можете опустить имя типа для
// параметров одного типа до последнего параметра,
// который объявляет тип.
func plusPlus(a, b, c int) int {
    return a + b + c
}

func main() {

    // Вызывайте функцию, как вы ожидаете, используя
    // `name(args)`.
    res := plus(1, 2)
    fmt.Println("1+2 =", res)

    res = plusPlus(1, 2, 3)
    fmt.Println("1+2+3 =", res)
}

Резюме

В этом практическом занятии мы узнали о функциях в Go. Мы рассмотрели, как определить функции, как передавать им аргументы и как возвращать из них значения. Мы также увидели, как использовать одну функцию внутри другой функции.