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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
maest
79 / 34 / 3
Регистрация: 11.11.2010
Сообщений: 494
#1

Ошибка при компиляции - C++

26.05.2011, 11:55. Просмотров 1264. Ответов 8
Метки нет (Все метки)

Создал структуру:

C++
1
2
3
4
5
6
7
8
9
10
11
struct STUD
{char t[200];
 char y[100];
 char u[100];
 char  i[100];
 char o[100];
};
 
...
 
STUD.t="Привет!";
При компиляции выдает ошибку:

E2108 Improper use of typedef 'STUD'
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2011, 11:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка при компиляции (C++):

Ошибка при компиляции. Где ошибка? (Работа с классом) - C++
Уважаемые форумчане! При компиляции проекта возникает ошибка " undefined reference to `MeterNZiF::MeterNZiF()' " на 7 строку приложения. ...

Ошибка памяти при выполнении, при компиляции не выводит ошибки - C++
ПОмогите плс программа вводит строку символов до точки, а после вычисляет процент согласных в этой строке и выводит их в обратном порядке....

Не является внутренней или внешней командой - ошибка не при компиляции а при работе программы - C++
В VS скомпилировал код #include <iostream> using namespace std; int main() { int a; cout<<"Hallo"; cin>>a; cout<<a; ...

Использование шаблонов при наследовании, ошибка при компиляции - C++
При изучении списков написал шаблон протестировал, все работает. После написал класс наследник от шаблона List.h, компилятор выдает...

При компиляции ошибка. Ошибка c++ C2678 - C++
Ошибка c++ C2678 #include <windows.h> #include <string> #include <iostream> #include <conio.h> #include <fstream> #include...

Ошибка при компиляции - C++
Решил посмотреть что из себя предстовляет DirectX . Установил SDK набрал код из примера , компилирую ... и ошибка Сам код ...

8
kjahert
49 / 49 / 5
Регистрация: 08.04.2011
Сообщений: 124
26.05.2011, 12:02 #2
Для того чтобы обращаться к полям и методам, нужно создать экземпляр этого класса - переменную.
STUD mySTUD;
Тогда обращение mySTUD.t имеет смысл.
Попробуй сделать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class STUD
{
 public:
 char t[200];
 char y[100];
 char u[100];
 char  i[100];
 char o[100];
};
 
...
STUD mySTUD;
mySTUD.t="Привет!";
0
asics
Freelance
Эксперт С++
2850 / 1785 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
26.05.2011, 12:03 #3
maest, Сначала надо создать екземпляр структуры, а уже потом присваевать ее полям значения.
C++
1
2
STUD obj;
strcpy(obj.t, "qwerty");

Не по теме:

Опередили...

0
maest
79 / 34 / 3
Регистрация: 11.11.2010
Сообщений: 494
26.05.2011, 14:49  [ТС] #4
Цитата Сообщение от kjahert Посмотреть сообщение
Для того чтобы обращаться к полям и методам, нужно создать экземпляр этого класса - переменную.
STUD mySTUD;
Тогда обращение mySTUD.t имеет смысл.
Попробуй сделать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class STUD
{
 public:
 char t[200];
 char y[100];
 char u[100];
 char  i[100];
 char o[100];
};
 
...
STUD mySTUD;
mySTUD.t="Привет!";
Теперь появляется ошибка:
E2277 Lvalue required
0
pito211
186 / 173 / 8
Регистрация: 22.03.2010
Сообщений: 612
26.05.2011, 15:04 #5
Цитата Сообщение от kjahert Посмотреть сообщение
mySTUD.t="Привет!";
и это будет работать? помоему надо как asics сказал через strcpy
0
mansp
18 / 18 / 0
Регистрация: 07.11.2010
Сообщений: 136
26.05.2011, 15:50 #6
Цитата Сообщение от pito211 Посмотреть сообщение
и это будет работать? помоему надо как asics сказал через strcpy
если ещё реализовать деструктор для структуры то работать таким образом оно не будет
0
maest
79 / 34 / 3
Регистрация: 11.11.2010
Сообщений: 494
26.05.2011, 16:24  [ТС] #7
Цитата Сообщение от mansp Посмотреть сообщение
если ещё реализовать деструктор для структуры то работать таким образом оно не будет
Попонятней можно?
0
LineStown
66 / 66 / 3
Регистрация: 04.08.2010
Сообщений: 420
Завершенные тесты: 1
26.05.2011, 17:13 #8
строки не присваиваются просто знаком равенства(использовать strcpy(кому,что) ).
деструктор для структур не нужен.
0
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
26.05.2011, 17:49 #9
Цитата Сообщение от LineStown Посмотреть сообщение
деструктор для структур не нужен.
поправка - деструктор не нужен для тривиальных классов и структур. Ресурсы могут выделяться (в конструкторе) как для классов, так и для структур.
0
26.05.2011, 17:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.05.2011, 17:49
Привет! Вот еще темы с ответами:

Ошибка при компиляции - C++
#include"stdafx.h" #include<iostream> #include<iomanip> #include<cmath> #include<time.h> int main() { float mas; ...

ошибка при компиляции - C++
перенес программу с другого компа и столкнулся со следующими ошибками(см. изображение). попробывал скачать библиотеку graphics.h для...

Ошибка при компиляции - C++
Всем здрасте , я тут новенький , при компиляции выходит ошибка , вот отрывочек : 1> Для всех выходных данных обновления не требуется. ...

Ошибка при компиляции - C++
Здравствуйте! При компиляции возникает проблема, не могу определить ошибки в коде, не могли бы вы его при возможности исправить? ...


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

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

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