I am in the process of porting a C++ application built with MS Visual Studio .NET to g++ 3.4.3 and am slowly moving thru the compilation warnings and errors. I have come upon a error which I am trying to solve (I believe related to Template defintion). In ArrayDataType.cxx (at the bottom) the ArrayVector type is somehow not in scope (I assume because the compiler reports a syntax error before the ; on the ArrayVector::const_iterator itr; line in ArrayDataType.cpp). The following source code extract defines the problem and I would appreciate any recommendations.
ArrayDataType.h ========================================== namespace FAII { template <class T> class ArrayDataType : public DataType { public: typedef std::vector<T*> ArrayVector; // Constructors and destructor public: ArrayDataType(const FAIIstring& elementName); ArrayDataType(const ArrayDataType<T>& other); virtual ~ArrayDataType() = 0; private: // No default ctor ArrayDataType(); // Attributes protected: // The array ArrayVector m_array; }; }; ------------------------------------------------------------------------------------------------------- ArrayDataType.cxx ========================================== #include "ArrayDataType.h" template <class T> FAII::ArrayDataType<T>::~ArrayDataType() { ArrayVector::const_iterator itr; for (itr = m_array.begin(); itr != m_array.end(); itr++) delete (*itr); m_array.clear(); } _______________________________________________ help-gplusplus mailing list help-gplusplus@gnu.org http://lists.gnu.org/mailman/listinfo/help-gplusplus