Я написал этот класс. Это не полное описание исходного класса, чтобы сделать мою формулировку задачи краткой, я даю то, что требуется
template < class T>
class RB
{
class Child
{
members are Child are
T getValue() const , Child* getRightChild() const , Child* getLeftChild() const , void setLeftChild(Child *i_leftChild) , void setRightChild(Child *i_rightChild)
}
//Problematic function
void levelOrder(Child *root);
};
Можете ли вы указать, почему мой компилятор говорит "137 getValue' has not been declared "
template < typename T>
void RB< T>::levelOrder(Child *root)
{
std::vector< RB< int>::Child* > vec1 , vec2;
vec1.push_back(root);
vector< RB< int>::Child* >::iterator vec1start ,vec1end , vec2start, vec2end;
while(vec1.size() != 0 && vec2.size() != 0 )
{
vec1start = vec1.begin();
vec1end = vec1.end();
for( ; vec1start != vec1end ; ++vec1start)
{
std::cout<<"\n node value = "<< vec1start->getValue();
Я думаю, что я также не определил вектор правильно, мой вектор должен содержать внутренний элемент класса, любая помощь с этим также приветствуется