Форум программистов, компьютерный форум CyberForum.ru

Не создается объект - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поток внутри класса, реальность или плод моей фантазии? http://www.cyberforum.ru/cpp-beginners/thread346036.html
Дело в том, что для потока нужна статическая функция (все денные в классе НЕ статические), но будут ли независимые друг от друга потоки работать, в разных объектах класса? И как можно реализовать доступ потока к данным его среды(объекта)? Спасибо! Добавлено через 3 часа 37 минут Никто не знает ? =(
C++ Закрытие окна после нажатия любой клавиши. Всем привет. #include <iostream.h> using namespace std; int main() { int var1; int var2; var1 = 20; var2 = var1 + 10; http://www.cyberforum.ru/cpp-beginners/thread346035.html
Начал изучение C++ VS2010 C++
Всем привет! Подскажите пожалуйста книги и если можно ссылки на них которые необходимо прочитать в первую очередь, чтобы понять и освоить основы. Спасибо!
C++ Можно ли спрятать консоль в C++, и если да, то как?
Можно-ли спрятать консоль в с++, если да, то как? (спрятать - чтобы она не отображалась графически) А за одно какие для этого подключать библиотеки и какие аргументы в этих функциях.
C++ Графиические приложения http://www.cyberforum.ru/cpp-beginners/thread346011.html
Я начинающий программист и хотел с просить что надо знать что бы написать графические программы?
C++ libncurses некорректно работает #include <iostream> #include <cmath> #include <ncurses.h> using namespace std; class polar { private: float r; float angle; public: подробнее

Показать сообщение отдельно
Den4ik
0 / 0 / 0
Регистрация: 24.08.2011
Сообщений: 42

Не создается объект - C++

28.08.2011, 13:46. Просмотров 870. Ответов 8
Метки (Все метки)

Есть абстрактный класс от него 2 наследника. В этом классе есть итератор вершин графа
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
template <class Vertex, class Edge> class ABCG
{
protected:
    vector <Vertex *> v;
    vector <Edge *> e;
public:
    vector<Vertex *> getVertexesVector(){ return v; }
    vector<Edge *> getEdgesVector() { return e; }
    virtual ~ABCG (){};
class Iterator_V
    {
    private: 
        vector<Vertex *> vx;
        typename vector<Vertex *>::iterator *itrV;
    public:
        Iterator_V(ABCG<Vertex, Edge> &AG)
        {
            vx = getVertexesVector();
            itrV = vx.begin();
        };
        bool virtual done()
        {
            if (itrV == vx.end()) return true;
            return false;
        };
        virtual void operator ++ ()
        {
            itrV++;
        };
        virtual bool next()
        {
            if (done()) return false;
            operator ++();
            return true;
        };
        virtual Vertex* operator * () 
        {
            if(done())return NULL;
            return *itrV;
        };
        virtual Vertex* get(){return operator*();};
        virtual void begin(){ itrV = vx.begin();};
    };
};
и есть класс Граф, в котором переопределяются методы итератора
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
template <class Vertex, class Edge> class Graph
{
protected:
    ABCG <Vertex, Edge> *abstr;
public:
    Graph()     
    {
        abstr = new LGraph<Vertex, Edge>();
    };
class Iterator_V
    {
    public:
        Iterator_V(Graph& g)
        {
              if(g.Dense() == LGRAPH)
            abstr = new LGraph<Vertex, Edge>::Iterator_V((LGraph<Vertex, Edge> *)g.abstr);
              else
            abstr = new MGraph<Vertex, Edge>::Iterator_V((MGraph<Vertex, Edge> *)g.abstr);
        }
        void operator++() { return abstr->operator++(); }
        bool done() { return abstr->done(); }
        bool next() { return abstr->next(); }
        Vertex* operator*() { return abstr->operator*(); }
        Vertex* get() { return abstr->get(); }
        void begin() { return abstr->begin(); }
    protected:
        typename ABCG<Vertex, Edge>::Iterator_V *abstr;
    };
пытаюсь создать объект итератора
C++
1
2
3
4
5
void main()
{
    Graph<Vertex<int,int>,Edge<Vertex<int,int>,int,int>> g1(20,180,0,1)
           Iterator_V It(g1);
}
выдает ошибку Iterator_V undeclared identifier. Не могу понять почему не видит класс?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru