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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.95
Germanarih
3 / 3 / 0
Регистрация: 14.03.2011
Сообщений: 101
#1

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

14.03.2011, 23:02. Просмотров 3153. Ответов 4
Метки нет (Все метки)

Здравствуйте. Изучаю С++, пишу игру "Покер".) Только начал и сразу столкнулся с проблемой. При объявлении массива стрингов с помощью вектора в классе компилятор ругается на то, что я использую константу. Объясните, что делаю не так. Заранее благодарен.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
#include <map>
#include <vector>
#pragma once
 
using namespace std;
 
class Kard
{
    vector <string> suits(4); // Масти.
    vector <string> value(9); // Достоинства карт.
    
public:
    Kard(void);
    ~Kard(void);
};
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.03.2011, 23:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не могу объявить вектор в классе (C++):

Как объявить вектор фиксированной длины в классе? - C++
Нужно создать поле класса - вектор из двух элементов. Но код: class A { private: std::vector&lt;int&gt; v (2); ... } ...

Как объявить vector в классе? - C++
template&lt;typename NODETYPE&gt; class List { public: List(); ~List(); ... private: ... vector&lt;Node&lt;NODETYPE&gt; *&gt;...

Как объявить переменную в классе? - C++
Доброго времени суток. Как правильно объявить переменную в private: Делаю так: private: std::vector&lt;double&gt;* parameters = new...

Как объявить текстовую константу в классе? - C++
Добрый вечер. Нужно объявить текстовую константу в классе. Как это сделать? static const QString FAQ = &quot;faq.txt&quot;;Можно также просто как...

Как правильно объявить vector в классе? - C++
как правильно объявить вектор? #include &lt;vector&gt; #include &lt;algorithm&gt; using namespace std; extern int map; ...

Как объявить в классе static-массив, не используя cpp файлы - C++
Есть шаблон. В шаблон в качестве аргумента надо передать массив. Именно в качестве аргумента шаблона, а не в качестве аргумента методов...

4
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.03.2011, 23:05 #2
Germanarih, нельзя юзать константу.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
#include <map>
#include <vector>
#pragma once
 
using namespace std;
 
class Kard
{
        vector <string> suits; // Масти.
        vector <string> value; // Достоинства карт.
        
public:
        Kard();
        ~Kard();
};
 
Kard::Kard()
{
    suits.resize(4);
    value.resize(9);
}
2
slava_g1
71 / 71 / 8
Регистрация: 06.02.2011
Сообщений: 127
14.03.2011, 23:08 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
#include <map>
#include <vector>
#pragma once
 
using namespace std;
 
class Kard
{
        vector <string> suits[4]; // Масти.
        vector <string> value[9]; // Достоинства карт.
        
public:
        Kard(void);
        ~Kard(void);
};
Размерность передается в [ ]
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.03.2011, 23:09 #4
slava_g1, Вы вообще понимаете что вы сделали? оО
Массив из 4 векторов строк...
Массив из 9 векторов строк...
1
Germanarih
3 / 3 / 0
Регистрация: 14.03.2011
Сообщений: 101
14.03.2011, 23:50  [ТС] #5
Спасибо, ForEveR, я понял.
0
14.03.2011, 23:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.03.2011, 23:50
Привет! Вот еще темы с ответами:

Как в классе правильно объявить массив с константой в качестве размерности? - C++
Приветствую всех! Написал следующий код: Unit1.h class WireBare_Open { const int METAL_MAX; const int SECTION_MAX; ...

Как правильно объявить вектор? - C++
Только начинаю постигать STL. Подскажите, как заполнить случайными числами 1..9 значения контейнеров vector и map. И как вектор...

В шаблонном классе, один из параметров которого контейнер, объявить итератор этого контейнера - C++
Собсно #include &lt;windows.h&gt; #include &lt;iterator&gt; #include &lt;vector&gt; using namespace std; template &lt;class T, template...

Что объявить в классе-контейнере, чтобы его можно было перебирать поэлементно - C++
что и как надо объявить в своем классе-контейнере, чтобы его можно было перебирать поэлементно через цикл на диапазонах? там вроде должны...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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