Parametri c++

Conan il rabarbaro

Nuovo Utente
4
0
Salve a tutti. È possibile passare un vettore come parametro ad una funzione di tipo void? Perchè provandoci, in fase di compilazione mi vengono segnalati una serie di errori, cosa che non accade se provo con una funzione che restituisce un valore (dunque di tipo int oppure float).
 

Dario Salvati

Utente Attivo
1,401
247
CPU
Intel Core i5-3470
Scheda Madre
ASUS P8Z77-V LX
HDD
Western Digital Green 1TB 7200rmp + Crucial M550 128Gb
RAM
Corsair 8Gb(2x4GB) 1600Mhz
GPU
Msi GeForce 770 2Gb
Audio
Integrata mainbord
Monitor
Asus VE247H / 23.6"
PSU
XFX 550W Core Edition
Case
Fractal Design R4
OS
Arch Linux + Gnome
Si, è possibile.
 

crsn

Utente Attivo
27
8
Case
nessuna, sono in affitto.
sì, se la funzione accetta come parametro un vector dello stesso tipo.

Codice:
void function_with_parameters(const std::vector<int>& rMyVector)
{
  // do something
}

int main()
{
  std::vector<int> a { 1, 2, 3 }; // c++11 required

  function_with_parameters(a);
}

attenzione, che quando dici “una funzione di tipo void” non si capisce bene cosa intendi:
intendi una funzione che torna void o una funzione che accetta parametri di tipo void?

in ogni caso, è importante che la signature (valore di ritorno, nome_funzione, parametri) della funzione che vuoi chiamare, sia compatibile con la chiamata.


Codice:
void function_with_parameters()
{
  // do something
}

int main()
{
  std::vector<int> a { 1, 2, 3 }; // c++11 required

  function_with_parameters(a); // error! function_with_parameters doesn't accept std::vector<int> as first parameter
}
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili