编译错误:error: expected constructor, destructor, or type conversion before
类定义:
#ifndef _VECTOR_HPP
#define _VECTOR_HPP
template <typename Object>
class Vector
{
public:
Vector(int initSize = 0);
Vector<Object>& operator=(const Vector &rhs);
Object& operator[](int index);
void resize(int newSize);
void reserve(int newCapacity);
int size() const;
int capacity() const;
bool empty() const;
void push_back(const Object &x);
void pop_back();
const Object& pop();
typedef Object *iterator;
typedef const Object *const_iterator;
iterator begin();
const_iterator begin() const;
iterator end();
const_iterator end() const;
enum { SPACE_CAPACITY = 16 };
private:
int theSize;
int theCapacity;
Object *objects;
};
#endif
cpp中:
template <typename Object>
Vector<Object>::iterator Vector<Object>::begin()
{
return &objects[0];
}
template <typename Object>
Vector<Object>::const_iterator Vector<Object>::begin() const
{
return &objects[0];
}
template <typename Object>
Vector<Object>::iterator Vector<Object>::end()
{
return &objects[size()];
}
template <typename Object>
Vector<Object>::const_iterator Vector<Object>::end() const
{
return &objects[size()];
}
编译错误:
Vector.cpp:108: error: expected constructor, destructor, or type conversion before ‘Vector’
Vector.cpp:114: error: expected constructor, destructor, or type conversion before ‘Vector’
Vector.cpp:120: error: expected constructor, destructor, or type conversion before ‘Vector’
Vector.cpp:126: error: expected constructor, destructor, or type conversion before ‘Vector’