Data Member Reorganization

Started by
0 comments, last by d_emmanuel 17 years, 11 months ago
In C++ I have:

typedef Scalar double;

namespace Mathematics
{
	class Vector
	{
	public:
		Scalar x;
		Scalar y;
		Scalar z;
	private:
		Scalar oldMagnitudeSquared;
		Scalar magnitude;
		Scalar saved_sin;
		Scalar saved_cos;
		Scalar saved_sin_magsquared;
		Scalar saved_cos_magsquared;
...
member functions
...
}


Can I assume that the doubles x, y, and z will be sequential in memory, or might the compiler reorganize things?
Two things are infinite: the universe and human stupidity; and Im not sure about the universe. -- Albert Einstein
Advertisement
You can assume that x, y and z are sequentail in memory. However, there's no guarentee that z and oldMagnitudeSquared will be. The standard does not require compilers to place data members with different access modifers sequentailly
(though most do).

This topic is closed to new replies.

Advertisement