Use include guards!
Exemplary:
World.h:
#ifndef WORLD_H // <<<<<<<<< Note these preprocessor conditions
#define WORLD_H
#include "Ball.h"
#include "Camera.h"
#include "Stick.h"
class World
{
Ball ball[15];
Ball qBall;
Camera camera;
public:
World();
void update();
void render();
};
#endif // WORLD_H
Explanation:
If header files are included from other header files, and these occur redundantly within compilation units, you will get these 'redefinition' / 'redeclaration' errors.
The so called include guard conditions as shown above, prevent the preprocessor rendering the included code multiple times, and thus causing such errors.