C ++ stdforward

C ++ stdforward
Una delle funzioni essenziali di C ++, la funzione Forward (), sarà coperta nella lezione di oggi. Per assicurarsi che ogni aspetto della funzione sia compreso chiaramente, useremo anche alcuni esempi. Ma in primo luogo, esaminiamo rapidamente il linguaggio di programmazione C ++, i fondamenti delle funzioni e la logica alla base dell'implementazione della funzione award ().

La fondazione del linguaggio di programmazione C ++ è fondata sui concetti di programmazione orientata agli oggetti (OOP). L'utente può facilmente creare e comprendere i principi del programma poiché C ++ ha un framework adeguato. Inoltre, poiché le funzioni sono pezzi di codice concisi, il principio è stato chiarito in C ++ in modo che possa essere utilizzato ovunque all'interno di un programma in esecuzione.

introduzione

Nel linguaggio C ++, la funzione award () funziona in modo simile alla funzione Move () in quanto entrambi vengono utilizzati per implementare la semantica. Nella funzione Forward (), accetta un valore di inoltro come valore di input e quindi determina se un LVALUE o un RVALUE RIFERIMENTI sono stati forniti al valore di input. E in cambio se fornirà o meno il tipo di riferimenti con l'argomento del modello T. La funzione Forward () viene utilizzata per eseguire un inoltro perfetto. Quando un riferimento RValue viene assegnato a una variabile Ref, Ref diventa un'entità nominata. Anche se il Ref è un riferimento a RValue, rientra nella categoria LVALUE. Di conseguenza, la copia semantica piuttosto che la semantica di spostamento viene impiegata per riferimenti.

Sintassi

La funzione lValue () è un modello di valore sinistro nella funzione award () ed è la parola chiave predefinita nel linguaggio C ++ che viene utilizzato per iniziare un modello di classe. Viene quindi seguito da eventuali parametri del modello contenuti all'interno di A e la dichiarazione di classe. Il parametro del modello "T" e la parola chiave "classe" sono segnaposto per i tipi di dati utilizzati nella dichiarazione. Passeremo questo parametro "t" e chiameremo la funzione award () e passeremo il tipo e l'argomento in essa. La funzione del modello di remove_reference () fa parte della libreria standard C ++. La funzione rValue () è il modello di valore giusto nella funzione award (). Una variabile Ref si trasforma in un oggetto denominato quando viene applicato un riferimento a rValue. Anche se l'arbitro è un riferimento a un RValue, appartiene alla classe LValue.

Parametri:

Arg: è un argomento di input e viene utilizzato per passare nella funzione award ().

Valore di ritorno:

In cambio, otterremo il riferimento RValue (valore destro) se non otteniamo il riferimento LValue (valore sinistro).

Esempio 01:

Ora, iniziamo a implementare il nostro primo esempio di una delle funzioni che è la funzione di inoltro () nel linguaggio C ++. Per iniziare a scrivere il codice che vogliamo implementare nel linguaggio di programmazione C ++, abbiamo sempre bisogno di un compilatore in cui scriviamo il codice ed eseguiamo il codice. Quindi, per questo, è possibile installare qualsiasi compilatore di linguaggio C ++, oppure puoi anche utilizzare il compilatore online per scrivere ed eseguire il codice se è compatibile con le librerie che utilizzerai nel programma.

#includere
#includere
Utilizzo dello spazio dei nomi std;

Dopo aver aperto il compilatore C ++, ora puoi iniziare a scrivere il codice. Nei programmi C ++, dobbiamo sempre includere file di intestazione nel programma in modo da poter chiamare facilmente la funzione che useremo nel programma ovunque. Queste librerie sono le librerie integrate del linguaggio di programmazione C ++. Dobbiamo semplicemente scrivere solo una riga di codice per includere queste librerie. La prima libreria che includeremo sempre nel programma C ++ è la libreria "Iosteam" che viene utilizzata per ottenere input dall'utente e possiamo anche visualizzare i dati tramite la libreria "Iosteam". Per chiamare la biblioteca, scriviamo per la prima volta il simbolo "#" che dirà al compilatore che accederemo alla libreria. Quindi, scriveremo la parola chiave "Includi" che è la parola chiave predefinita che istruirà il compilatore che stiamo includendo la libreria. E nel simbolo, scriveremo il nome della libreria che stiamo importando nel programma che è iostream ".

Includeremo la seconda libreria integrata del programma che stiamo usando che è "utilità". La libreria "utilità" viene utilizzata per definire alcuni modelli che vengono utilizzati spesso attraverso la libreria di modelli standard (STL) nell'intero programma esistente. Inoltre, stavamo usando la regola "Using Space SPST" per prevenire oggetti, metodi e parametri di condividere lo stesso dominio in tutto il resto del programma.

vuoto sovraccarico (int const & a)

cout<< "[lvalue]";

vuoto sovraccarico (int && a)

cout<< "[rvalue]";

modello
T forward (t && a)

sovraccarico (a);
sovraccarico (avanti (a));

Abbiamo implementato la funzione globale che è uno dei singoli metodi orientati agli oggetti in cui abbiamo dichiarato la funzione al di fuori della funzione principale () e quindi chiamiamo semplicemente la funzione nella funzione principale () e abbiamo superato le variabili dichiarate in esso in modo che noi Ottieni l'output desiderato. Innanzitutto, scriveremo il tipo di dati della funzione che stiamo implementando che è "vuoto", il che significa che la funzione non restituisce alcun valore.

Successivamente, scriveremo il nome della funzione che implementeremo la funzione "sovraccarico ()" e passeremo il parametro in esso. Nella funzione sovraccarico () abbiamo stampato il messaggio B utilizzando il metodo Cout (). La funzione sovraccarica () significa che è possibile fornire più funzioni con lo stesso nome nello stesso spazio dei nomi. Con le funzioni sovraccarichi, è possibile fornire un metodo a più semantiche in base ai tipi e alle quantità dei suoi parametri. Come vedi, abbiamo implementato un'altra funzione con lo stesso nome "sovraccarico" nello stesso programma e abbiamo superato il parametro in esso.

Successivamente, abbiamo implementato la funzione predefinita modello () nel programma in modo da poter restituire il risultato di qualsiasi tipo di dati. E abbiamo chiamato la funzione sovraccarica (). Come hai visto, la funzione sovraccarica () è il tipo "int", quindi è per questo che abbiamo implementato la funzione modello (), se inseriamo il valore di qualsiasi tipo in modo che il compilatore non generi alcun errore nel programma.

Quindi, inizieremo la funzione principale () in cui dichiareremo la variabile e accederemo alle funzioni globali sopra. Innanzitutto, abbiamo dichiarato le due variabili di tipo int e abbiamo assegnato il valore loro. Abbiamo dichiarato un'altra variabile di tipo "int" denominata e abbiamo memorizzato l'espressione aggiuntiva in "res". Quindi, abbiamo stampato la variabile "Res" e abbiamo anche superato la variabile "Res" nella funzione Forward () in modo da ottenere il LVALUE e nella funzione Funzione in avanti () successiva otterremo il riferimento di LVALUE e RVALUE.

int main ()
int a = 30, b = 23;
int res = a+b;
cout<< res << " is a: ";
forward (res);
cout<cout<forward (a+b);
cout<restituzione 0;

E alla fine della funzione principale (), torneremo 0 alla funzione principale () in modo che direbbe al compilatore che vogliamo interrompere l'esecuzione del programma e mostrare l'output del programma.

Conclusione

In questo articolo, abbiamo appreso la funzione Forward () che è la funzione integrata del linguaggio di programmazione C ++. Abbiamo anche imparato a conoscere il sovraccarico e anche la funzione modello () del linguaggio C ++. Abbiamo implementato un esempio della funzione award () e abbiamo usato la funzione modello () in essa.