Press "Enter" to skip to content

Pointer Receivers – Go Lang Practical Programming Tutorial p.8


a cosa sta succedendo , tutti sono benvenuti
parte otto della programmazione go
serie di tutorial in questa parte che cosa siamo
di cui sto parlando sta crescendo
questi metodi e nel precedente
tutorial abbiamo parlato del valore
ricevitori e ora stiamo per essere
parlando dei metodi di ricezione del puntatore
quindi la grande differenza qui è che con
un ricevitore puntatore possiamo effettivamente iniziare
modificando i valori attuali il
attribuisce le cose in quello che sei tu
conosco il tipo di struttura in pratica sono in
Nel nostro caso questa macchina tipo e se noi
volevo modificare un valore all’interno di qui
non possiamo farlo con un ricevitore di valore
quindi è quello che faremo qui
per iniziare la prima cosa che
andremo avanti e faremo fondamentalmente
lo aggiungeremo semplicemente qui
quindi diciamo cosa vogliamo fare
cambiare la velocità massima del veicolo così
per farlo inizieremo
con func e poi come prima
passerai a vedere la macchina ma il grande
la differenza qui sta per essere usata
un diritto puntatore si sta andando essere rivolto
attraverso la lettura di quella macchina
digita fondamentalmente così ora cosa stiamo andando
chiama questa è la nuova velocità massima e la nuova
la velocità massima sta modificando qualcosa così noi
in realtà non è necessario restituire nulla
ma noi facciamo dove andremo a prendere
parametri che sarebbero la nuova velocità
che dirà solo che è mobile 64 così
ora dentro a noi tutto quello che faremo davvero
è necessario vedere la velocità massima in km / h è uguale
nuova velocità quindi ora andremo avanti
e fare è venire qui e siamo solo
copiare questo e poi quello che faremo
è solo un punto per auto sottolineatura
nuova velocità massima e diremo ora il nuovo
la velocità massima è di 500 chilometri all’ora e
quindi ora ripagiamo Staudt km / h miglia
all’ora chilometri all’ora miglia
meglio andare avanti, salvo che lo faremo
vieni qui e vai corri, vai e adesso
possiamo vedere che è stato modificato 495 308 come
contrario a sì che è
23 138 quindi sembra che funzionasse alla grande
ora la prossima cosa voglio solo gentile
di parlare di portare davvero questo punto
casa è come quello di dire in quale
corre primi chilometri all’ora così dentro
chilometri all’ora cosa succederebbe se
abbiamo detto di vedere i punti migliori chilometri di velocità
all’ora è uguale a 500, quindi possiamo vederli
questo è il vero che vediamo questi sono i
i valori iniziali quindi andiamo avanti
e eseguirlo ancora una volta
e possiamo vedere che i chilometri per
l’ora è abbastanza sicura è il valore più veloce
ma poi quando torniamo a miglia per
ora torna ad essere l’originale e
allora questo è quando è stato impostato in modo permanente
perché usiamo il puntatore quindi ora cosa
sarebbe successo se lo avessimo convertito
uno a un ricevitore puntatore, quindi cosa sarebbe
abbiamo bisogno di fare per convertire questo metodo
qui per essere un ricevitore puntatore piuttosto
di un ricevitore di valore
sfortunatamente è super super
complicato perché fondamentalmente siamo solo
devi farlo così ora andremo qui
se gestiamo questo e ora possiamo vederlo
in realtà questi due gruppi di valori sono
identico perché in realtà perché
questo è un ricevitore puntatore
sta modificando il valore in realtà è
facendo esattamente la stessa cosa che eravamo
facendo proprio qui, così questo ha
modificato il valore per chilometri no
solo chilometri all’ora ma anche miglia
all’ora perché i chilometri orari sono
chiamato prima di miglia all’ora ovviamente
se dovessimo fare miglia all’ora a
ricevitore puntatore e non chilometri per
ora che non sarebbe successo
i chilometri all’ora sarebbero ancora in attesa
non farmi questo
[Musica]
okay stavo per solo stavo per
uscire a posto in modo che il motivo per cui che ha funzionato
eccolo lì per questo, lasciami fare
lasciatemi sbarazzarmi di quello, ma anche io sono un
poco preoccupato oh e noi no
non ha modificato la velocità penso che potrei
essere quasi fatto registrare tutorial per
il giorno se sto facendo quel tipo di a
sbaglio comunque, ne usciamo uno di più
tempo quindi qui puoi vedere ovviamente km / h
non è stato influenzato, ma i chilometri orari sono
colpiti come dovremmo aspettarci e
poi chilometri all’ora e così via così
questo punto penso che un ragionevole
la persona si sta probabilmente chiedendo perché perché
potrei mai usare un valore per il ricevitore
proprio come sarebbe il punto di a
valore ricevitore se un ricevitore puntatore può
fare il lavoro di un ricevitore di valori e a
Ricevitore puntatore qual è il punto di bene
Sono contento che tu abbia chiesto
quindi in generale, quindi, cosa sta succedendo con a
ricevitore di valore
si sta tagliando, è piuttosto semplice
fare una copia di quello che stai passando
quindi fa una copia e poi così puoi
fai tutti i tipi di cose e puoi farlo
stai certo che qualunque cosa tu faccia non lo è
farò saltare tutto mentre il punto
del ricevitore in realtà è gonna modificare
quella cosa stessa ha un valore
ricevitore se la struttura è di tipo ridotto
come la nostra struttura è molto piccola c’è
non troppi input qui un valore
il ricevitore sarà un’opzione migliore
in termini di efficienza ma se la struttura
è molto grande perché questo sta facendo un
copiare il ricevitore Pointer sta per essere
un’operazione più efficiente è giusta
andando ad avere meno spazzatura associati
con esso in modo che davvero solo tipo di
dipende dal tuo caso d’uso ora se tu
vai alla versione testuale di questo
tutorial mi collegherò ad un possibile in realtà
anche solo tiralo su dal golang
Doc’s perché, come dovrei usare qui andiamo
dovrei definire metodi su valori o
puntatori e questo è fondamentalmente l’esatto
domande così sai che stanno dicendo
sì la considerazione dell’efficienza se
i ricevitori conosci molto bene
struct sarebbe molto più economico usare a
ricevitore puntatore perché non lo sei
facendo quella copia ma poi
questo sento parlare di coerenza come se
loro se alcuni dei metodi del tipo
deve avere un ricevitore puntatore cioè
sai che devi modificare qualcosa
poi il resto dovrebbe troppo
per me questo mi fa capire che è come
sciocco perché perché così non ne fa nessuno
senso intendo le persone sono persone non lo sono
scrivere per la sua bellezza o per piacere
è super semplicità, quindi le persone lo sono
intenzione di usare l’efficienza per te
dovrebbe fare tutto per
efficienza penso che andrò avanti
e non sono d’accordo con te lì Golang Docs
ma um ma ma sì intendo io quello che io
penserei che sarebbe l’ idea migliore
scrivere il tuo codice e poi se lo hai
ho degli esempi in cui potrebbe essere un puntatore
potrebbe essere un convertitore di valore convertito
loro per valutare i ricevitori vedere se hai fatto
enormi guadagni e se non guadagni
che ti interessa
okay, falla diventare puntatore
ricevitori ma per fare tutto da fare
tutto ciò che un ricevitore puntatore solo a
per placare la coerenza sembra un po ‘
sciocco per una lingua come andare in realtà
questo è tutto ciò di cui voglio parlare
puntatori e ricevitori di valore quindi
la lezione è finita , sei libero di andartene, ma io
fare solo il mio spettacolo in modo rapido una funzione
che è intenzione di fare fondamentalmente la stessa identica
cosa solo perché sospetto che alcune persone
potrebbe essere curioso e a questo punto tu
davvero dovrebbe essere in grado di scrivere a
funzione in golang che sta per fare
cosa stanno facendo questi metodi, ma se tu
voglio vedermi fare
possiamo andare avanti e farlo ora così tanto
diciamo piuttosto che usare un puntatore o
un ricevitore di valore cosa se tu come sarebbe
scrivi una funzione che potrebbe fare
fondamentalmente la stessa identica cosa per
esempio , chiamiamo semplicemente più nuovo
sottolinea la velocità massima e questo sta per succedere
prendere alcune cose che possono prendere C di
tipo di auto e poi ci vorrà un nuovo
velocità che sarà un float 64 quindi è
andando a restituire un tipo di macchina e poi
finalmente possiamo fare cose così che potremmo
diciamo che la velocità massima dei punti C è pari a km / h
e poi possiamo
velocità di ritorno e quindi cosa potremmo fare
è venuto qui e piuttosto che una carta
punto nuova velocità massima possiamo ridefinire a
auto quindi potremmo dire che un’auto è uguale a un’auto
la nuova velocità massima prende il parametro di a
auto e cinquecento
abbiamo passato una macchina vicino alla massima velocità per vedere la macchina
speed is a float64 Restituisce la macchina in modo chiaro
Sto solo leggendo questo errore non può correre
utilizzare la velocità come tipo di auto in cambio o Oh
Stupido , proviamo ancora bene
va bene così come puoi vedere lì che abbiamo fatto
la nostra modifica fondamentalmente sembra a
un po ‘stucchevole perché probabilmente lo siamo ancora
lasciato sì che in là così tornando
torna al modo in cui questo codice dovrebbe apparire
ce l’hai, quindi è un modo come te
potresti semplicemente scrivere solo
una funzione che fa esattamente lo stesso
cosa di quel metodo, anche se lo sei
dovrei scrivere sopra un’automobile in fondo
ma questo è quasi certamente impossibile
essere efficiente ma in realtà solo per guidare
home un esempio di una funzione che lo farebbe
servire a tale scopo così comunque lo faremo
sessione bonus okay, questo è tutto per ora se
voi ragazzi avete commenti alle domande
riguarda qualsiasi cosa si senta libera di andarsene
li sotto altrimenti ti vedrò in
prossimo tutorial dove stiamo tornando
al nostro esempio di sviluppo web
Please follow and like us:

Be First to Comment

Lascia un commento