Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/05/2016, 06:22
Avatar de SrKaesar
SrKaesar
 
Fecha de Ingreso: mayo-2016
Ubicación: Venezuela
Mensajes: 9
Antigüedad: 8 años
Puntos: 0
Pregunta Metodo gets da error "is private"

Hola amigos!

Estoy aprendiendo a programar POO por mi cuenta y quiero hacer un programa que haga los cálculos y muestre el desplazamiento de una partícula. Ahora cuando defino el método gets y compilo me da este error

" [Error] 'float Particula::vel_0' is private"

y no entiendo ¿por que? Les agradezco su ayuda.


#include <iostream>

using namespace std;


class Particula {

private:

string nombre;
float masa; //kg
float posX; // mts
float vel_0; // mts/s
float acel_0; // mts/s^2

public :

Particula(string name, float M, float X, float vel, float acel){

nombre = name;
masa = M;
posX = X;
vel_0 = vel;
acel_0 = acel;

cout << " Particula: " << nombre << endl;
cout << " Masa: " << masa << " Kg" << endl;
cout << " Posicion: " << posX << " mts" << endl;
cout << " Velocidad: " << vel_0 << " mts/s" << endl;
cout << " Aceleracion: " << acel_0 << " mts/s^2" << endl;
}

void setValores(string name, float M, float X, float vel, float acel);
float getVel();
float velocidad(float vel, float acel, float t);

};


void Particula::setValores(string name, float M, float X, float vel, float acel){

nombre = name;
masa = M;
posX = X;
vel_0 = vel;
acel_0 = acel;

}


float Particula::getVel(){
return vel_0);
}

float Particula::velocidad(float vel, float acel, float t){

vel = vel_0 + acel*t;
return vel;
}



const float g = 9.8;

int main(){


float t;
cout << endl << endl;

Particula p1("P_1", 1, 0,0,0);

cout << p1.vel_0;
cout << endl << " Tiempo: "; cin >> t;
cout << endl << " velocidad = " << p1.velocidad(0,g,t) << " mts/s";




cout << endl << endl;
system("pause");
return 0;

}