Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
 Аватар для dimkaok
2 / 2 / 0
Регистрация: 06.03.2013
Сообщений: 128

Подскажите, почему для каждого объекта в программе выдает две ошибки

20.04.2013, 23:16. Показов 2613. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот ошибки:
error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "o_enemy"
error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает

В чем может быть причина?
Миниатюры
Подскажите, почему для каждого объекта в программе выдает две ошибки  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.04.2013, 23:16
Ответы с готовыми решениями:

#c++ Написал программу, qt выдает ошибки напротив cout по всей программе. Подскажите почему
#include <QCoreApplication> #include <iostream> #include <iomanip> #include <ctime> #include <cstdlib> #include <cmath> using...

Сделал програмный код для открытия в консоли таблицы Excel, но почему-то компилятор выдает ошибки
using Excel = Microsoft.Office.Interop.Excel; Excel.Application xlApp = new Excel.Application(); Excel.Workbook...

Почему выдает ошибки:
Пример из учебника крупника, все настройки, которые он там указывал, не делал, я делал настройки по учебнику Калашникова(из учебника...

25
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
21.04.2013, 11:32
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от kravam Посмотреть сообщение
dimkaok, а где у тебя, с позволения спросить, файл CMove.h? Ты его подключать подключаешь, а его нет.
Вероятно, это тот, который назван CMove.cpp
0
 Аватар для dimkaok
2 / 2 / 0
Регистрация: 06.03.2013
Сообщений: 128
21.04.2013, 11:38  [ТС]
Цитата Сообщение от stima Посмотреть сообщение
Мой вам совет, сделайте шаг назад. Почитайте немного
Да я, дело в том, что уже прочитал Лафоре "ООП в C++" и еще много чего, и теперь,
чтобы закрепить материал, решил написать небольшой проект. Я еще много не знаю,
но только лишь читать книги и выполнять задачи из конца главы - тоже не дело.

Цитата Сообщение от kravam Посмотреть сообщение
а где у тебя, с позволения спросить, файл CMove.h? Ты его подключать подключаешь, а его нет.
Он есть. Всего 13 файлов, я просто не стал все здесь приводить
Миниатюры
Подскажите, почему для каждого объекта в программе выдает две ошибки  
0
 Аватар для dimkaok
2 / 2 / 0
Регистрация: 06.03.2013
Сообщений: 128
24.04.2013, 14:35  [ТС]
Кажется, я немного продвинулся с этой проблемой.
Вынес определения всех объектов программы в отдельный хедер:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#ifndef _OBJECTS_H_
#define _OBJECTS_H_
 
#include "CBattle.h"
#include "CField.h"
#include "CGameCicle.h"
#include "CMessages.h"
#include "CMove.h"
#include "CPlayer.h"
 
namespace obj {
    extern CPlayer    o_player;
    extern CPlayer    o_enemy;
    extern CMessages  o_messageBox;
    extern CField     o_field;
    extern CBattle    o_battle;
    extern CMove      o_move;
    extern CGameCicle o_game;
}
 
#endif // _OBJECTS_H_
И подключил его во все *.cpp - файлы, где используются эти объекты
Но теперь другие ошибки выдает:
Миниатюры
Подскажите, почему для каждого объекта в программе выдает две ошибки  
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
24.04.2013, 14:43
Цитата Сообщение от dimkaok Посмотреть сообщение
Вынес определения всех объектов программы в отдельный хедер:
Есть файл, в котором объекты объявлены без "extern"?
0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
24.04.2013, 15:18
Почитайте про экстерн. Если кратко Вы сказали: "У меня есть вот столько внешних обьектов." Компилятор вам сказал: "Хорошо". Линкер же в панике: "Ну и где эти .... обьекты".

Добавлено через 1 минуту
А вообще вы уже архитектурно не правы. Куча статики и Все знают о всех.
0
 Аватар для dimkaok
2 / 2 / 0
Регистрация: 06.03.2013
Сообщений: 128
24.04.2013, 15:56  [ТС]
Цитата Сообщение от Tulosba Посмотреть сообщение
Есть файл, в котором объекты объявлены без "extern"?
Нет, это я уже ошибся, убрал отовсюду extern

Цитата Сообщение от stima Посмотреть сообщение
А вообще вы уже архитектурно не правы. Куча статики и Все знают о всех
В смысле куча статики? У меня только константные переменные статичные. А то, что все объекты
в одном месте, то да, тут я подозреваю, что-то не то я сделал

Можете, пожалуйста, посмотреть мой код?
Я там уже все дописал, мне только нужно объекты правильно определить
Вложения
Тип файла: zip C++ RPG.zip (16.1 Кб, 4 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.04.2013, 15:56
Помогаю со студенческими работами здесь

Почему выдает ошибки?
In function 'int main()': 10:14: error: 'gets' was not declared in this scope 11:35: error: 'strlen' was not declared in this scope ...

Возникают две ошибки в любой программе
привет. какую бы программу не написал до самой простой в фри паскаль. показывает две ошибки и не могу запустить программу. в чем дело, кто...

Почему mysql_real_escape_string выдает ошибки?
$text1 = mysql_real_escape_string($_POST); $text2 = mysql_real_escape_string($_POST); Warning: mysql_real_escape_string(): Access...

Почему выдает эти ошибки?
error: invalid types ‘float ’ for array subscript error: size of array ‘arr’ has non-integral type ‘float’ #include <iostream> ...

Почему программа выдает ошибки?
Всем здравствуйте! Кто может подсказать, что не так с программой? почему она работает некорректно и матлаб "ругается"? ...


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

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера» Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит. Придуман Биллом Госпером в 1970-х, опубликован в. . .
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb"> <style> <!]> </ style> <g id="bush"> </ g> </ svg> function fn(){ let rost;/ / высота древа let xx=165,yy=210,w=256;
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов, содержащихся в реализации модуля. По-умолчанию все члены модуля доступны: module Foo let x = 10 let boo () = printfn "boo" . . .
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru