This article was previously published under Q216977
This article has been archived. It is offered "as is" and will no longer be updated.
When you compile a template class that contains a data member that is an array of a second template class, and the second class contains a data member that is an array, and the size of both arrays is dependent on a template parameter, you may receive the following error:
error C2233: '<Unknown>' : arrays of objects containing zero-size arrays are illegal
Use a pointer instead of an array. Allocate the space for the array in the constructor, and deallocate the space for the array in the destructor.
Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.
This bug has been fixed in Microsoft Visual Studio 6.0 Service Pack 5 (SP5).