Metodo statico C ++

Metodo statico C ++
Un metodo in C ++ è anche noto come funzione e l'uso di metodi in C ++ promuove il concetto di programmazione modulare e riusabilità del codice. Significa che i metodi che una volta scritti possono essere chiamati ripetutamente per tutte le volte necessarie senza avere la necessità di scriverli ogni volta. Questi metodi hanno le seguenti tre proprietà di base:
  • I metodi statici possono essere recuperati direttamente con il nome della classe e l'operatore di risoluzione dell'ambito senza creare alcun oggetto.
  • I metodi statici di una classe possono accedere solo ai membri statici di quella classe.
  • I metodi statici non possono accedere ai membri non statici di una classe.

Abbiamo progettato questo articolo per insegnarti l'uso dei metodi statici in C ++ in Ubuntu 20.04.

Usando il metodo statico in C ++ in Ubuntu 20.04

Per utilizzare i metodi statici in C ++ in Ubuntu 20.04, devi prima passare attraverso tutti gli esempi forniti di seguito per avere una buona idea di come funzionano queste funzioni in C++.

Esempio n. 1: esplorare la prima proprietà dei metodi statici in C++

In questo esempio, desideriamo esplorare la prima proprietà dei metodi statici in C ++; È possibile accedere ai metodi statici di una classe direttamente con il nome della classe durante l'utilizzo dell'operatore di risoluzione dell'ambito. Per questo, abbiamo scritto uno script C ++ mostrato nella seguente immagine:

In questo script C ++, abbiamo definito una classe denominata "Numero". All'interno del corpo di questa classe, abbiamo solo una funzione pubblica. Abbiamo dichiarato questa funzione come "statica". Il nome di questa funzione è "Printnum", E prende il numero" n "come unico parametro. All'interno di questa funzione, vogliamo semplicemente stampare il valore di questo numero passato sul terminale. Come puoi vedere, non abbiamo definito alcun costruttore per questa classe. Ciò significa che non intendiamo creare il suo oggetto. Invece, accederemo direttamente alle funzioni di questa classe.

Ora, all'interno del nostro "principale()"Funzione, abbiamo avuto accesso al"Printnum"Funzione della classe" Numero "con l'aiuto del nome della classe e dell'operatore di risoluzione dell'ambito. Mentre chiamiamo questa funzione, l'abbiamo superata un numero casuale, io.e., 25. Nostro "principale()"La funzione si conclude con l'istruzione" return 0 "poiché abbiamo dichiarato che ha un tipo di ritorno intero.

Quando abbiamo compilato ed eseguito questo script C ++, il nostro numero è stato stampato correttamente sul terminale, come mostrato nell'immagine seguente. Significa che la prima proprietà dei metodi statici in C ++ è stata soddisfatta: è possibile accedere ai metodi statici direttamente con il nome della classe senza creare alcun oggetto e funzionano esattamente come previsto.

Esempio n. 2: esplorare la seconda proprietà dei metodi statici in C++

In questo esempio, vogliamo esplorare la seconda proprietà dei metodi statici in C ++; I metodi statici di una classe possono accedere solo ai membri statici di quella classe. Per questo, abbiamo scritto uno script C ++ mostrato nella seguente immagine:

In questo script C ++, abbiamo definito per la prima volta una classe denominata "numero". All'interno del corpo di questa classe, abbiamo un membro privato "X" di tipo dati intero e l'abbiamo reso statico. Quindi, abbiamo solo una funzione pubblica. Abbiamo dichiarato questa funzione come "statico". Il nome di questa funzione è "Printnum", E prende il numero" n "come unico parametro. All'interno di questa funzione, vogliamo stampare il valore di questo numero passato sul terminale e il valore del membro statico "X".

Successivamente, abbiamo inizializzato il membro statico "X" con un valore "10" con l'aiuto del nome della classe al di fuori della nostra classe senza utilizzare di nuovo la parola chiave "statica". Ora, all'interno del nostro "principale()"Funzione, abbiamo avuto accesso al"Printnum"Funzione della classe" Numero "con l'aiuto del nome della classe e dell'operatore di risoluzione dell'ambito. Mentre chiamavamo questa funzione, l'abbiamo superata un numero casuale, io.e., 25. Nostro "principale()"La funzione si conclude con l'istruzione" return 0 "poiché abbiamo dichiarato che ha un tipo di ritorno intero.

Quando abbiamo compilato ed eseguito questo script C ++, il nostro numero, nonché il valore della variabile "X", è stato stampato correttamente sul terminale, come mostrato nell'immagine seguente. Significa che la seconda proprietà dei metodi statici in C ++ è stata soddisfatta: i metodi statici possono accedere solo ai membri statici di una classe in C++.

Esempio n. 3: esplorare la terza proprietà dei metodi statici in C++

In questo esempio, desideriamo esplorare la terza proprietà dei metodi statici in C ++, che è, in effetti, l'altro modo di indicare la seconda proprietà; I metodi statici non possono accedere ai membri non statici di una classe. Per questo, abbiamo scritto uno script C ++ mostrato nella seguente immagine:

Questo script C ++ assomiglia esattamente allo script mostrato nel secondo esempio. Tuttavia, l'unica differenza è che questa volta non abbiamo dichiarato la variabile "x" come statica.

Quando abbiamo compilato ed eseguito questo script C ++, è stato generato un messaggio di errore sul terminale come mostrato nell'immagine seguente, affermando che non è possibile accedere qualcosa come il valore di "X" con un metodo statico in C++. Significa che la terza proprietà dei metodi statici in C ++ è stata soddisfatta: i metodi statici non possono accedere ai membri non statici di una classe in C++.

Esempio # 4: generazione di numeri di rollio consecutivi utilizzando i metodi statici in C++

In questo esempio, volevamo solo dare una visione generale di come funzionano i metodi statici in C ++ avvolgendo i nostri esempi. Creeremo solo un programma per generare alcuni numeri di rollio nell'intervallo fornito. Per questo, abbiamo scritto uno script C ++ mostrato nella seguente immagine:

In questo script C ++, abbiamo una classe chiamata "RollNumber". All'interno di questa classe, abbiamo un membro statico privato "rollnum" del tipo di dati interi. Quindi, abbiamo un metodo statico pubblico "getrollnum ()"Con il tipo di ritorno intero. Al di fuori della definizione di questa classe, abbiamo inizializzato la nostra variabile "rollnum" con un valore "1" e definito il nostro "getrollnum ()"Funzione anche per restituire l'incremento" rollnum "ogni volta che viene chiamato.

Quindi, all'interno del nostro "principale()"Funzione, abbiamo un ciclo" per "che itera attraverso una contabile da" 0 "a" 9 ", che è per 10 iterazioni. All'interno di questo ciclo, vogliamo stampare il valore restituito dal "getrollnum ()"Funzione per ogni iterazione. Ancora una volta, il "principale()"La funzione avvolge l'istruzione" return 0 ".

Quando abbiamo compilato ed eseguito questo script C ++, sul terminale è stata generata una serie di 10 diversi numeri di rollio come mostrato nella seguente immagine:

Conclusione

Il nostro obiettivo per questo articolo era di insegnarti l'uso dei metodi statici in C ++ in Ubuntu 20.04. Abbiamo condiviso le proprietà di base di questi metodi, seguiti dai quattro esempi attraverso i quali puoi immediatamente imparare come funzionano questi metodi in C++. Dopo aver compreso questi esempi, puoi facilmente acquisire un buon comando sui metodi statici in C++. Speriamo che tu abbia trovato questo articolo utile e dai un'occhiata al suggerimento di Linux per articoli più informativi.