|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.08.2010, 21:55 | #1 |
Пользователь
Регистрация: 04.01.2010
Сообщений: 23
|
Ошибки при построении
Пишу экзаменационную программу. Застрял в самом начале не могу сообразить в чем загвоздка. При построении выскакивает куча ошибок, как инициализировать массив string и остальные. Плиз помогите. Код ниже:
Код:
Последний раз редактировалось Stilet; 26.08.2010 в 11:29. |
25.08.2010, 22:06 | #2 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
Не уверен (не могу проверить сейчас), попробуйте то что в конструкторе вынести прямо в объявление класса после private, если не выйдет то делайте так (возможно)
Код:
|
26.08.2010, 11:04 | #3 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
По идее должно быть как-то так:
Код:
Код:
|
27.08.2010, 09:57 | #4 |
Пользователь
Регистрация: 04.01.2010
Сообщений: 23
|
Всем спасибо кто откликнулся. Убил кучу ошибок которые оказываеться большинство было из-за обьявления константы через #define. Теперь кол вот такой и всего 2 ошибки при построении:
Код HTML:
#include <iostream> #include <conio.h> #include <cstring> const int size = 52; using namespace std; class Deck { private: string Cards [size]; char Suit [size]; bool Picked [size]; public: Deck (); /*{ Cards = {"2", "2", "2", "2", "3", "3", "3", "3", "4", "4", "4", "4", "5", "5", "5", "5", "6", "6", "6", "6", "7", "7", "7", "7", "8", "8", "8", "8", "9", "9", "9", "9"}; }*/ void Deal (); void AddCard (); void ChangeCard (); }; Deck::Deck () { Cards = ("2", "2", "2", "2", "3", "3", "3", "3", "4", "4", "4", "4", "5", "5", "5", "5", "6", "6", "6", "6", "7", "7", "7", "7", "8", "8", "8", "8", "9", "9", "9", "9"); Suit = ('3','4','5','6'); Picked [0] = 0; } Код HTML:
1>Компиляция... 1>poker.cpp 1>c:\users\apolon\documents\visual studio 2008\projects\poker\poker\poker.cpp(27) : error C2440: =: невозможно преобразовать 'const char *' в 'std::string [52]' 1> Не существует преобразований в типы массивов, хотя существуют преобразования в ссылки или указатели на массивы 1>c:\users\apolon\documents\visual studio 2008\projects\poker\poker\poker.cpp(28) : error C2440: =: невозможно преобразовать 'char' в 'char [52]' 1> Не существует преобразований в типы массивов, хотя существуют преобразования в ссылки или указатели на массивы |
27.08.2010, 10:40 | #5 |
Дружите с Linq ;)
Форумчанин
Регистрация: 15.10.2008
Сообщений: 823
|
pu4koff глаголит истину.
Код:
Не давай организму поблажки, каждый день тренируй его в шашки..
|
27.08.2010, 17:24 | #6 |
JAVA BEAN
Участник клуба
Регистрация: 22.04.2007
Сообщений: 1,329
|
Есть вариант получше:
Никто не заметил, что данные в классе не зависят от параметров конструктора? Значит эти данные вполне можно сделать статическими. Вот так: Код:
ЗЫ А можно замахнуться и написать так: Код:
Последний раз редактировалось Carbon; 27.08.2010 в 17:32. |
27.08.2010, 17:33 | #7 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
Вообще-то массивы наверняка изменяются в процессе работы с объектом и они не в одном экземпляре на класс, а у каждого объекта свой массив. Так что статичность тут вряд ли подойдет.
|
27.08.2010, 17:58 | #8 |
JAVA BEAN
Участник клуба
Регистрация: 22.04.2007
Сообщений: 1,329
|
Я ж говорю, что вполне можно и программно заполнить.
Ну да может, тогда придётся заполнять руками, или можно хранить образец такого массива и в конструкторе быстренько его копировать. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка при построении в visual c++ | ghost1st | Visual C++ | 2 | 13.02.2010 22:55 |
Ошибки при сохранении | Alex19789 | Microsoft Office Excel | 6 | 16.10.2009 12:39 |
MS Visual Studio. ошибка при построении | Backfire | Софт | 0 | 11.10.2009 18:19 |
Рекурсия при построении матрицы достигаемости | [MI_nor] | Общие вопросы C/C++ | 0 | 29.03.2009 22:16 |
ошибки при компиляции | |{ot | Общие вопросы Delphi | 14 | 02.08.2008 01:20 |