Logo it.boatexistence.com

Perché restituire const reference c++?

Sommario:

Perché restituire const reference c++?
Perché restituire const reference c++?

Video: Perché restituire const reference c++?

Video: Perché restituire const reference c++?
Video: Почему возвращать ссылку иногда плохо в C++? 2024, Maggio
Anonim

Vuoi restituire un riferimento const quando restituisci una proprietà di un oggetto, che non vuoi modificare al di fuori di esso. Ad esempio: quando il tuo oggetto ha un nome, puoi eseguire il seguente metodo const std::string& get_name{ return name; };.

Quando dovresti usare un parametro di riferimento const?

Quando si passa un argomento per riferimento, utilizzare sempre un riferimento const a meno che non sia necessario modificare il valore dell'argomento. I riferimenti non const non possono essere associati ai valori r. Una funzione con un parametro di riferimento non const non può essere chiamata con valori letterali o temporanei.

Quando dovresti restituire per riferimento?

Passare per riferimento significa passare un riferimento a un oggetto che esiste già. Quindi, se vuoi restituire un riferimento in una funzione, significa che devi creare quell'oggetto nella funzione Sai che una funzione può creare un nuovo oggetto in due modi: Sul stack o heap.

Cosa fa const reference?

se stai usando const reference, lo passi per riferimento e i dati originali non vengono copiati. in entrambi i casi i dati originali non possono essere modificati dall'interno della funzione.

Cosa significa se viene restituito un riferimento?

Significa restituisci per riferimento, che, almeno in questo caso, probabilmente non è desiderato. Fondamentalmente significa che il valore restituito è un alias per qualsiasi cosa tu abbia restituito dalla funzione. A meno che non sia un oggetto persistente, è illegale.