1

そこで、オブジェクトがポーションなのか武器なのかをテストしたいと思います。typeid を使用してこれを行うにはどうすればよいですか (つまり、そのことについて何か)??

次に、この条件に基づいてオブジェクトをインスタンス化します。T temp とだけ言うことはできません。これは、抽象基本クラスをインスタンス化するためです (つまり、私の Item クラスには純粋な仮想関数が含まれています)。

template <typename T>
void List<T>::Load(std::ifstream & file)
{
//Read the number of elements
file.read(reinterpret_cast<char *>(&mNumberOfNodes), sizeof(int));

//Insert nodes into list

//If object is a potion
    //T * temp = new Potion;

//If object is a weapon
    //T * temp = new Weapon;

for( int i = 0; i < mNumberOfNodes; i++ )
{
    temp->Load(file);
    this->PushFront(&temp);
    mNumberOfNodes--;
    mNumberOfNodes--;
}
}
4

2 に答える 2