Heim  >  Artikel  >  Backend-Entwicklung  >  Belegen formale Parameter in der Go-Sprache den Speicher?

Belegen formale Parameter in der Go-Sprache den Speicher?

青灯夜游
青灯夜游Original
2022-12-28 17:19:374714Durchsuche

Formale Parametervariablen belegen keinen Speicher, wenn kein Funktionsaufruf erfolgt, sondern nur, wenn die Funktion aufgerufen wird, und der Speicher wird nach Abschluss des Aufrufs freigegeben. Der vollständige Name des formalen Parameters lautet „formaler Parameter“. Dabei handelt es sich um den Parameter, der bei der Definition der Funktion verwendet wird. Die Parameter verfügen jedoch bei der Definition der Funktion über keine tatsächlichen Daten, sodass dem formalen Parameter zuvor kein Speicher zugewiesen wird Die Funktion wird aufgerufen. Ihre Funktion besteht darin, den Typ der unabhängigen Variablen sowie ihre Form und Rolle im Prozess anzugeben.

Belegen formale Parameter in der Go-Sprache den Speicher?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, GO Version 1.18, Dell G3-Computer.

Funktion ist ein organisiertes, wiederverwendbares Codesegment, das zur Implementierung einer einzelnen oder verwandten Funktion verwendet wird, was die Modularität der Anwendung und die Wiederverwendungsrate des Codes verbessern kann.

Funktionsdefinition und Funktionsaufruf

Funktion stellt die logische Struktur der Codeausführung dar. In der Go-Sprache sind die Grundkomponenten einer Funktion: Schlüsselwort func, Funktionsname, Parameterliste, Rückgabewert, Funktionskörper und Rückgabe Anweisungen: Jedes Programm enthält viele Funktionen, und Funktionen sind grundlegende Codeblöcke.

Definitionssyntax:

func 函数名(形参列表)(返回值类型列表) {
  函数体,通常会有return语句,返回值
}
  • Funktionsname: Der Bezeichner der Funktion, der zum Auffinden der Funktion verwendet wird und intern eine Adresse ist, die auf den Funktionscode verweist.

  • Formale Parameterliste: bestehend aus Variablen und Typen

  • Liste der Rückgabewerttypen: Der Typ des Funktionsrückgabewerts. Es müssen mehrere Rückgabewerte angegeben werden.

  • Funktionskörper: Spezifische Anweisungen, die Funktionsfunktionen implementieren. Rückgabeanweisung: Rückgabewertanweisung

Funktionsaufrufsyntax:

函数名(实参列表)

Funktionsparameter

werden verwendet, um beim Aufrufen der Funktion Daten an die Funktion zu übergeben.

  • tatsächliche Parameter, tatsächliche Parameter. Beim Aufruf angegebene Parameter. Bezieht sich auf Parameter mit spezifischen tatsächlichen Daten.

  • Formale Parameter, formale Parameter. Beim Definieren verwendete Parameter. Das bedeutet, dass die Funktion Parameter erfordert, die Parameter jedoch keine tatsächlichen Daten haben, wenn sie definiert werden. Funktionen/Methoden weisen vor dem Aufruf keinen Speicher zu. Ihre Funktion besteht darin, die Art und Form der unabhängigen Variablen und ihre Rolle im Prozess zu beschreiben.

    Die Beziehung zwischen tatsächlichen und formalen Parametern: Formale Parameter können nur Variablen sein (ihr Datentyp muss angegeben werden); tatsächliche Parameter können Variablen, Konstanten oder Ausdrücke sein.

    Die Anzahl und Position der tatsächlichen und formalen Parameter sowie deren entsprechende Datentypen sollten konsistent sein.

Beim Aufruf erfolgt der Prozess der Zuweisung von Werten zu formalen Parametervariablen unter Verwendung tatsächlicher Parameter, der als Parameterübertragung bezeichnet wird. Während der Ausführung der Funktion enthalten die formalen Parameter bestimmte Daten und die formalen Parameter entsprechen den in der Funktion deklarierten Variablen. Die Übergabe von Parametern ist in zwei Methoden unterteilt: Wertübergabe und Adressübergabe. Wenn die Adresse übergeben wird, muss der formale Parameter als Zeigertyp definiert werden und der Adressparameter muss beim Aufruf abgerufen werden.

  • Wenn der eigentliche Parameter beim Aufruf der Funktion ein Array-Name ist, wird die erste Adresse des Arrays an den formalen Parameter übergeben.

  • Die Übergabe tatsächlicher Parameter an formale Parameter erfolgt in eine Richtung. Formale Parametervariablen belegen keinen Speicher, wenn kein Funktionsaufruf erfolgt, sondern nur, wenn sie aufgerufen werden. Der Speicher wird nach Abschluss des Anrufs freigegeben.

Beispielcode:

func funcTest(p1 int, p2 *int) {
  p1++
  *p2++
  fmt.Println(p1, *p2)
}
func main() {
  var (
    a1 = 42
    a2 = 42
  )
  funcTest(a1, &a2)
  // 参数赋值过程
  fmt.Println(a1, a2)
}

Das Obige gibt

43 43
42 43

aus[Verwandte Empfehlungen: Go-Video-Tutorial, Programmierunterricht]

Das obige ist der detaillierte Inhalt vonBelegen formale Parameter in der Go-Sprache den Speicher?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn