Sign in to follow this  
daniel_i_l

C++ ctor

Recommended Posts

Hi, i have the following structure:
struct Matrix3D
{
	//3 coloum vectors
	Vector3D C[3];

	//ctor - identity matrix
	Matrix3D():C[0].x(1), C[1].y(1), C[2].z(1){}
	//ctor - user defined
	Matrix3D(const Vector3D &c0, const Vector3D &c1, const Vector3D &c2)
		:C[0](c0),
		 C[1](c1),
		 C[2](c2)
	{}
...
...
};

but in both of the ctors i get the error: c:\documents and settings\daniel lowengrub\my documents\visual studio 2005\projects\physic\physic\physic\Matrix3D.h(16) : error C2059: syntax error : '[' What's the problem? Thanks.

Share this post


Link to post
Share on other sites
You can't construct the elements of an array in an initializer list like that. Just do it in the body of the constructor.

struct Matrix3D
{
//3 coloum vectors
Vector3D C[3];

//ctor - identity matrix
Matrix3D()
{
C[0].x = 1;
C[1].y = 1;
C[2].z = 1;
}
//ctor - user defined
Matrix3D(const Vector3D &c0, const Vector3D &c1, const Vector3D &c2)
{
C[0] = Vector3D(c0);
C[1] = Vector3D(c1);
C[2] = Vector3D(c2);
}
...
...
};

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this