I have the following classes:
//----------------------------------------------------------------------
//                              CHARACTER CLASS
//----------------------------------------------------------------------
class Character
{
private:
    POINT2f char_position;
public:
    VECTOR2f char_velocity;
    Character();
    ~Character();
    // Mutators
    void SetChar_Position(POINT2f p);
    void SetChar_Velocity(VECTOR2f v);
    // Accessors
    POINT2f GetChar_Position();
    VECTOR2f GetChar_Velocity();
};
//----------------------------------------------------------------------
//          PLAYER CLASS - INHERITED FROM "CHARACTER" CLASS
//----------------------------------------------------------------------
class Player : public Character
{
private:
public:
int health;
Player();
~Player();
void SetPlayer_Health(int h);
int GetPlayer_Health();
};
So essentially the player class inherits from the character class.
The Character class has member function which lets you set the characters position and velocity, which take in a POINT2f and VECTOR2f.
Within my main bit of code I create a player character Player Player1 and than set the balls velocity and position if a button is pressed:
if (ui.isActive('A'))   // Check to see if "A" key is pressed
    {
        // Player Ball
        Player1.SetChar_Velocity.x = -12.0;
        Player1.SetChar_Position.x += (Player1.GetChar_Velocity.x*dt);
        Player1.SetChar_Velocity.x += (acceleration*dt);
    }
I'm currently getting errors that say left of .x must have class/struct/union, so I change Player1.SetChar_Velocity.x = -12.0; to Player1.SetChar_Velocity().x = -12.0; which than brings up the error expression must have class type and to few arguments in function call.
Does anyone know of a method that will allow my to only manipulate the x number of the char_velocity only. also I understand that my code to Set the .x velocity isn't correct because I'm not passing in a VECTOR2f value.
 
     
    