Salve a tutti ho un problema con la dimensione della classe in questione
Quando faccio sizeof(distrVehicle) il suo valore è di 184 byte, invece facendo la somma delle singole variabili io mi trovo 180 la differenza diventa maggiore se aggiungo anche una variabile char*... infatti sizeof(char*) occupa 4 byte invece nel computo generale risultano essere 8...codice:class distrVehicle{ public: distrVehicle() { cout << "Inizializzazione Vehicle\n"; } ~distrVehicle() { cout << "Distruzione Vehicle\n"; } double updateVELOCITY; bool dream; bool obstacle; int mHealth; int mAttack; int mUpdateVelocity; //char* vehicleBlockPosition; double m_dTimeElapsed; double mAcceleration; //distributedSteeringBehaviour steering; //std::vector<Vector2D> m_vecVehicleVB; //Moving Entity Vector2D m_vVelocity; Vector2D m_vHeading; Vector2D m_vSide; double m_dMass; double m_dMaxSpeed; double m_dMaxForce; double m_dMaxTurnRate; //Game Base Entity int m_ID; int m_EntityType; bool m_bTag; bool mLeader; int mTeam; int mBattalion; double m_dBoundingRadius; Vector2D m_vPos; Vector2D m_vScale; void fillVehicle(){ m_dBoundingRadius = 43.65f; m_vPos = Vector2D(32,43); m_vScale = Vector2D(32,43); } };
sizeof(int) = 4
sizeof(double) = 8
sizeof(Vector2d) = 16
sizeof(bool) = 1
Il tutto è molto strano mi serve avere una misura specifica... perchè devo inviare l array di byte sulla rete....
Grazie a tutti...