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

[C++] В чём тут ошибка? (делаю конструктор-копировщик) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Классы... http://www.cyberforum.ru/cpp-beginners/thread75147.html
Написать класс точка на плоскости (CPoint), создайте два конструктора: первый по умолчанию устанавливает координаты в нули, второй в указные числа, напишите методы этого класса: установить координаты точки, показать координаты точки, проверить принадлежность точки область прямоугольника, окружности. нужна помощь... пропустил много (конструкторы), начали классы и в первый день д\з если не...
C++ Randomize & random нужно было сгенить рандомно пару чисел, но увы засад компилятор материт Randomize и random, андеклейр и хоть убей. stdlib.h подключил, и еще много чего пытался подключить но все безуспешно, рендом не хочет видеть, ресурс есть в папке там где и все .h может кто подскажет в чом проблема и как ее решить использую DEV C++ http://www.cyberforum.ru/cpp-beginners/thread75131.html
C++ СРОЧНО!!! Составить Матрицу!(ТОлько СИ, не СИ++)
Даны два одномерных массива, в первом из которых записаны значения не нулевых элементов матрицы А, во втором - Приведенные индексы этих элементов (Порядковый номер каждого элемента, при чтении матрицы по строкам; номер начального элемента равен 0); Указано число столбцов матрицы. Задание: Составить матрицу P.S Огромное спасибо заранее!
C++ Максимальный и минимальные элементы массивов
Доброго времени суток, уважаемый форумчане! Возникла проблема с написанием программы для решения вот так вот задачки - "Заменить минимальный элемент массива A(5x8) максимальным элементом массива B(7x6), а минимум массива B - максимальным элементом массива A". Благодарен за любую помощь и советы.
C++ Вывести все элементы массива, встречающиеся более одного раза http://www.cyberforum.ru/cpp-beginners/thread75084.html
Дана целочисленная последовательность (одномерный массив целых чисел). Написать программу нахождения количества различных элементов этой последовательности. Вывести все элементы, встречающиеся более одного раза.
C++ Не работает getline(cin,s), istream.ignore() Использую microsoft visual c++ 6.0. не работает: string s; getline(cin,s);//дважды приходиться жать ентер При использовании cin.ignore(255,'\n') аналогичная ситуация Также ifstream.ignore(255,<любой символ>)-вообще не работает. Кто решал такую проблему, помогите чем могите. подробнее

Показать сообщение отдельно
#pragma
Временно недоступен
 Аватар для #pragma
952 / 223 / 6
Регистрация: 12.04.2009
Сообщений: 921
16.12.2009, 21:52  [ТС]     [C++] В чём тут ошибка? (делаю конструктор-копировщик)
Вот,я переделал таким образом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  class Subroutine {
     public:
        Subroutine (){};
        Subroutine (const Subroutine& copy) : _name (copy._name),
                                 params (new vector <expr_Node_t *> (copy.params->size()))
        {
           std::copy (copy.params->begin(),
                      copy.params->end(), *params);
        }
       ~Subroutine () { delete params;};
 
        string name() const {return _name;};
        void setName (const string  *const s) {_name = *s;};
 
        void pushParam (expr_Node_t *expr) {
           params->push_back(expr);
        }
     private:
        string _name;
        vector <expr_Node_t *> *params;
  };
Теперь выдаётся такая ошибка(и):
ошибки
Код
/usr/include/c++/4.3/bits/stl_algobase.h|388|instantiated from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = false, _II = expr_Node_t**, _OI = std::vector<expr_Node_t*, std::allocator<expr_Node_t*> >]’|
/usr/include/c++/4.3/bits/stl_algobase.h|435|instantiated from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = false, _II = __gnu_cxx::__normal_iterator<expr_Node_t**, std::vector<expr_Node_t*, std::allocator<expr_Node_t*> > >, _OI = std::vector<expr_Node_t*, std::allocator<expr_Node_t*> >]’|
/usr/include/c++/4.3/bits/stl_algobase.h|466|instantiated from ‘_OI std::copy(_II, _II, _OI) [with _II = __gnu_cxx::__normal_iterator<expr_Node_t**, std::vector<expr_Node_t*, std::allocator<expr_Node_t*> > >, _OI = std::vector<expr_Node_t*, std::allocator<expr_Node_t*> >]’|
/home/user/Interpreter/function.h|50|instantiated from here|
/usr/include/c++/4.3/bits/stl_iterator_base_types.h|133|error: no type named ‘iterator_category’ in ‘class std::vector<expr_Node_t*, std::allocator<expr_Node_t*> >’|
||=== Build finished: 1 errors, 0 warnings ===|
И указывает на этот кусок кода:
stl_iterator_base_types.h
C++
1
2
3
4
5
6
7
8
9
  template<typename _Iterator>
    struct iterator_traits
    {
      typedef typename _Iterator::iterator_category iterator_category; // На эту строку
      typedef typename _Iterator::value_type        value_type;
      typedef typename _Iterator::difference_type   difference_type;
      typedef typename _Iterator::pointer           pointer;
      typedef typename _Iterator::reference         reference;
    };
Я понимаю,что не знаю каких-то элементарных вещей,просто хотя бы понять суть ошибки,там уже я сам докопаюсь.
 
Текущее время: 18:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru