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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
red_88
6 / 6 / 0
Регистрация: 10.02.2009
Сообщений: 136
#1

Объявление vector'а членом класса - C++

15.10.2010, 16:27. Просмотров 853. Ответов 4
Метки нет (Все метки)

Всем доброго времени суток.
В общем идея такова. Есть класс
Код
class Vetv
{
public:
	Vetv(int a,int b, int *ves);
	Vetv();
	int nFrom;
	int nTo;
	int *Ves;
};
Хочется сделать класс, в котором будет динамический массив объектов типа myclass. Пишу так:
Код
class UzelVC
{
private:
	vector<Vetv> Versh;
public:
	UzelVC(char *InpFile);
	virtual ~UzelVC(void);
	void PrintRes(int a,int b);
};
В итоге ошибка
Код
1>c:\users\user\documents\visual studio 2010\projects\myfirst\myfirst\uzelvc.h(6): error C2143: синтаксическая ошибка: отсутствие ";" перед "<"
1>c:\users\user\documents\visual studio 2010\projects\myfirst\myfirst\uzelvc.h(6): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>c:\users\user\documents\visual studio 2010\projects\myfirst\myfirst\uzelvc.h(6): error C2238: непредвиденные лексемы перед ";"
Может кто-то подсказать мыслю? Заранее всем спасибо.

Добавлено через 2 минуты
зыж. компилятор ругается на строку
Код
vector<Vetv> Versh;
пробовал там же писать Vetv Versh[10]-аналогичная ошибка.
Код
vector<int> Versh;
-тоже
работает только int Versh[10]
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2010, 16:27     Объявление vector'а членом класса
Посмотрите здесь:

Пример класса со статическим членом - C++
Привести пример со статическим членом класса и примеры доступа к нему.

Ошибка: метод не является членом класса - C++
namespace SCheckInputParams { void TChekInputParams::setRadarCoordinates(float latitude_, float longitude_, float height_) { ...

Ошибка, связанная со статическим членом класса - C++
Есть код: class Foo{ public: static void f(); int a; }; void Foo::f(){ std::cin &gt;&gt; a; }

Указатель является переменной-членом класса - C++
#include &lt;iostream&gt; class SimpleCat { public: SimpleCat(); ~SimpleCat(); int GetAge() const { return *itsAge; } void...

Linker error с приватным статическим членом класса - C++
class Point3d { private: int x; int y; int z; static...

Считать строку в массив символов, который является членом класса - C++
гетлайны, гетси, манипуляторы ws не работают (не могу заставить) #include &lt;iostream&gt; using namespace std; class employee { ...

Как задать размер массива, который является членом класса, через конструктор? - C++
Почему так? И как же тогда задать размер этого массива? class Test { public: Test(int size) : arrSize(size){}; private: ...

Объявление класса с шаблоном - C++
Пишу в Qt. Создал класс с шаблоном matrix.h #ifndef MATRIX_H #define MATRIX_H template &lt;class T&gt; class Matrix {

Двойное объявление класса - C++
Для чего два раза писать class Animal? class Animal; void setValue (Animal&amp;, int); class Animal { public: Animal(); ...

Объявление объекта класса - C++
Доброе время суток! Дело вот в чем: В конструкторе c параметрами класса Piramida, мне нужно создать объект класса M_Ygolnik с...

Объявление класса Patient - C++
Доброго времени суток! Есть программа, в ней несколько файлов. Есть класс Patient, на который создается указатель в файле...

Объявление класса Point - C++
Объявил класс Point в заголовочном класса для хранения значений координат x,y а далее класс Rectanagle и вот в классе Rectanagle каждая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
oxotnik
1589 / 1066 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
15.10.2010, 16:32     Объявление vector'а членом класса #2
сначала объявляешь Vetv, а затем UzelVC
т.е.
Код
class Vetv
{
.......
};

class UzelVC
{
....
};
red_88
6 / 6 / 0
Регистрация: 10.02.2009
Сообщений: 136
15.10.2010, 16:34  [ТС]     Объявление vector'а членом класса #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once
 
 
class Vetv
{
public:
    Vetv(int a,int b, int *ves);
    Vetv();
    int nFrom;
    int nTo;
    int *Ves;
};
 
class UzelVC
{
private:
    vector<Vetv> Versh;
public:
    UzelVC(char *InpFile);
    virtual ~UzelVC(void);
    void PrintRes(int a,int b);
};
и аналогичная ошибка. Вроде для С++ порядок объявления роли не играет?
oxotnik
1589 / 1066 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
15.10.2010, 16:38     Объявление vector'а членом класса #4
C++
1
2
#include <vector>
using namespace std;
есть?
red_88
6 / 6 / 0
Регистрация: 10.02.2009
Сообщений: 136
15.10.2010, 16:47  [ТС]     Объявление vector'а членом класса #5
точно, в срр включил, а в заголовочник нет. недавно си ломаю )
Yandex
Объявления
15.10.2010, 16:47     Объявление vector'а членом класса
Ответ Создать тему
Опции темы

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