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

Не получается заполнить вектор объектами класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Регулярное выражение http://www.cyberforum.ru/cpp-beginners/thread803406.html
Пишу под Qt и получил такую проблему. Почему данный код не выводит чего либо в консоль?: QString data("<div class=\"text\">xxx:<br>ну да, мама говорит, что там дыра в полу, все просыпается...
C++ Сумма с заданной точностью Вычислить сумму с заданной точностью #include <iostream> #include <math.h> #include <clocale> #include <iomanip> #include <process.h> using namespace std; int main() http://www.cyberforum.ru/cpp-beginners/thread803405.html
C++ решение слау метод главных элементов
В с++ я полный чайник поэтому и прошу помощи. Дали задание написать программу решения системы линейных алгебраических уравнений методом главных элементов. Перерыл весь форум ничего не нашел :(...
C++ Исходной код функции rand()
Здравствуйте. Кто может показать эту функцию? Интересно как реализовано.
C++ Создайте программу с классом Dancer, который включает в себя следующие данные-эле¬менты о парах-участниках соревнований по спортивным бальным танцам: http://www.cyberforum.ru/cpp-beginners/thread803387.html
Создайте программу с классом Dancer, который включает в себя следующие данные-эле¬менты о парах-уастниках соревнований по спортивным бальным танцам: ► ФИО партнера; ...
C++ В чем ошибка? Программист Денис c детства мечтал побывать в Антарктиде, но почему-то регулярных рейсов туда нет. Поэтому Денис все лето изучал Антарктиду с помощью соседнего кинотеатра. Теперь он знает, что в... подробнее

Показать сообщение отдельно
freemanc
12 / 12 / 1
Регистрация: 27.11.2012
Сообщений: 140
08.03.2013, 20:15  [ТС]
~OhMyGodSoLong~, через указатель я попробую, но меня сейчас больше интересует именно хранение объектов.
Я делаю класс CAnimate на примере этого:
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
class CObject
{
  private:
    TRect rect;
    HRGN hRgn;
    GTB * Image;
  public:
           //Тут мы видим:
    CObject(void);  //Конструктор по умолчанию
    CObject(int x,int y,int type); //К. с параметрами
    CObject(const CObject&); // и копирования
    ~CObject(void) {             // и деструктор
            delete Image;
            DeleteObject(hRgn);
          }
    GTB* Draw(void) { return Image; }
           /* много методов */
 
};
 
CObject::CObject(void) {
  Image = new GTB();
  rect = TRect(0,0,0,0);
  hRgn = CreateRectRgn(0,0,0,0);
}
CObject::CObject(int _x, int _y, int type)
{
  Image = new GTB();
  Image->Transparent= true;
  ..........
}
С этим классом объявление и инициализация вектора выглядела так:
C++
1
2
3
4
vector<CObject> list;
list.push_back(CObject(342,706,1));
list.push_back(CObject(94,1387,1));
list.push_back(CObject(676,1130,1));
Этот класс не мой. Мне нужно сделать то же самое. Добавив new в каждый из имеющихся конструкторов своего класса, он имеет следующий вид:
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
class CAnimate
{
private:
 
    ......
    Graphics::TBitmap *Animation; //Сама анимация
    Graphics::TBitmap *Frame; //Кадр анимации
 
 
public:
    TPoint Position;   //Позиция анимации
    
    CAnimate()
    {
        // то о чем вы говорили
        Animation = new Graphics::TBitmap();
        Animation->Transparent = true;
        Frame = new Graphics::TBitmap();
        Frame->Transparent = true;
    }
 
    CAnimate(int _x, int _y)
    {
        Animation = new Graphics::TBitmap();
        Animation->Transparent = true;
        Frame = new Graphics::TBitmap();
        Frame->Transparent = true;
        Position.x = _x;
        Position.y = _y;
    }
 
    ~CAnimate()
    {
        delete Animation;
        delete Frame;
    }
Теперь я в заблуждении, вроде бы классы одинаковые, но:
C++
1
2
vector<CAnimate> Rooms;
Rooms.push_back(CAnimate(20,40));
не работает. Объясните мне пожалуйста в чем тут соль.

Добавлено через 53 минуты
Неужели никто не может помочь?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru