Hola, he empezado con la programación hace poco y tengo un pequeño problema en este programa:
#include <iostream> #include <fstream> #include <string>
using namespace std;
int SumaYCuenta(ifstream f, float& suma);
int main(void) { int num_elementos = 0; float suma = 0; ifstream fich_in; string nombre; cout << "Este programa nos calcula la media de los numeros de un fichero en caso de que exista algun numero dentro de ese fichero" << endl << endl; cout << "Dame el nombre del fichero: "; cin >> nombre; fich_in.open(nombre); if (!fich_in) cout << "Error abriendo fichero"; else { num_elementos = SumaYCuenta(fich_in, suma); if (num_elementos != 0) cout << "La media es: " << suma / num_elementos; else cout << "El fichero no contenia ningún elemento."; } fich_in.close(); return 0; }
int SumaYCuenta(ifstream f, float& suma) { int num; int contador = 0; while(f >> num) { suma = suma + num; contador++; } return contador; }
----------------------------------------------------------------------------------------- [Error] use of deleted function 'std::basic_ifstream<char>::basic_ifstream(const std::basic_ifstream<char>&)'
[Error] use of deleted function 'std::basic_ios<char>::basic_ios(const std::basic_ios<char>&)'
[Error] 'std::ios_base::ios_base(const std::ios_base&)' is private
[Error] within this context
[Error] initializing argument 1 of 'int SumaYCuenta(std::ifstream, float&)'
¿Alguien sabe que puedo hacer? El programa marca la linea 40
|