g++ 4.1.2 でコンパイルすると、このエラーが発生します。
「エラー: operator= に一致しません」((PoolElementList*)this)->PoolElementList::i_currentElement = ((PoolElementList*)this)->PoolElementList::i_elementList.std::vector<_Tp, _Alloc>::end _Tp = ModifyTerminationPointReqInfo*、_Alloc = std::allocator を使用
PoolElements の定義は次のとおりです。
template <class Element, Element *intialElementPtr>
class PoolElementList
{
GenericMemoryPool <Element, intialElementPtr> *i_elementPoolPtr;
vector <Element *> i_elementList;
vector <Element *> i_currentElement;
public:
//Define a constructor that takes in a pointer of the pool.
PoolElementList(GenericMemoryPool <Element, intialElementPtr> *elementPool):
i_elementPoolPtr (elementPool)
{
i_currentElement = i_elementList.end(); //error is here**
};
誰かがこれで何が間違っているのか説明してください。(これは g++ 2.9.x でのコンパイルでした)