Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
 Аватар для grrrrr
49 / 49 / 13
Регистрация: 21.04.2009
Сообщений: 265

что то не так с компилятором?

24.06.2011, 11:52. Показов 2142. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
есть класс, который переписан с книги Лафоре Р.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <cstdlib>
#include <iostream>
#include <conio.h>
 
class time
{
      private:
              int hrs, mins, secs;
      public:
             time() : hrs(0), mins(0), secs(0)
             {}
             time(int h, int m, int s) : hrs(h), mins(m), secs(s)
             {}
             void display();
             void add_time(time t1, time t2);             
};
 
void time::display()
{
     std::cout << hrs << ":" << mins << ":" << secs << "\n";
}
void time::add_time(time t1, time t2)
{
     secs = t1.secs + t2.secs;
     if(secs > 59)
     {
             secs = secs - 60;
             mins++;
     }
     mins = t1.mins + t2.mins;
     if(mins > 59)
     {
             mins = mins - 60;
             hrs++;
     }
     hrs = t1.hrs + t2.hrs;
}
 
int main(int argc, char *argv[])
{
    time time1(5, 59, 59);
    time time2(4,30,30);
    time time3;
    time3.add_time(time1, time2);
    std::cout << "time3 = " << time3.display;
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
ошибки:

\projects\1\new.cpp expected `;' before "time1"
\projects\1\new.cpp [Warning] statement is a reference, not call, to function `time'
\projects\1\new.cpp expected `;' before "time2"
.
.
.
что не так??
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.06.2011, 11:52
Ответы с готовыми решениями:

Как сделать так чтоб работало? Что с компилятором?
ошибка: No such file or directory #include &lt;iostream&gt; using namespace std; int main() {const int n=15; int i;double...

что с Компилятором
привет) я конечно понимаю что вопрос нубский но всетаки:p у меня есть 2 компилятора VC++ 5.0 VC++ 6.0 бывает я компилю ,а он раз и как-бы...

что-то с компилятором
Кончилась пробная версия вижуал студио 2012, я не знал что можно продлить её и начал качать другую, устанавливал и прервал.. короче после...

17
Кошковед
 Аватар для co6ak
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
24.06.2011, 11:53
....
а код ?
0
 Аватар для grrrrr
49 / 49 / 13
Регистрация: 21.04.2009
Сообщений: 265
24.06.2011, 12:04  [ТС]
co6ak, см. выше
0
Кошковед
 Аватар для co6ak
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
24.06.2011, 12:09
C++
1
2
    std::cout << "time3 = ";
    time3.display();
работает

Добавлено через 42 секунды
получалось
cout << "time3 = " << cout <<.....
1
 Аватар для grrrrr
49 / 49 / 13
Регистрация: 21.04.2009
Сообщений: 265
24.06.2011, 12:13  [ТС]
то же самое, а вообще мне кажется что у меня проблемы с конструктором - т.к. почему то ругается на первую строку после main()
0
Кошковед
 Аватар для co6ak
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
24.06.2011, 12:15
хз.
попробуй конструктор по умолчанию задать как
time( int =0, int =0, int =0);
без скобок фигурных всяких. наф они не нужны там.
0
 Аватар для grrrrr
49 / 49 / 13
Регистрация: 21.04.2009
Сообщений: 265
24.06.2011, 12:23  [ТС]
в книге автор рекомендует именно со скобочками , хотя после рекомендации он почему то не аргументировал такое решение.
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
24.06.2011, 12:28
в отдельные файлы определение и реализацию класса вынеси
0
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
24.06.2011, 12:32
grrrrr, ошибка в 45-й строке

Цитата Сообщение от grrrrr Посмотреть сообщение
в книге автор рекомендует именно со скобочками
и правильно делает, если конструктор пустой, чтобы сразу было видно что он пустой

Добавлено через 24 секунды
да и conio.h здесь нафиг не нужен
1
 Аватар для grrrrr
49 / 49 / 13
Регистрация: 21.04.2009
Сообщений: 265
24.06.2011, 12:55  [ТС]
и еще вопрос - по классам. При объявлении класса, авторы книг иногда описывают сначала закрытые, а потом открытые элементы или наоборот. Я так понимаю , что разницы нет?
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
24.06.2011, 13:19
grrrrr, нету
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
24.06.2011, 13:23
grrrrr, разницы нет, но в начале класса можно не писать private: а в начале структуры можно не писать public: так как они подразумеваются по умолчанию.
0
 Аватар для grrrrr
49 / 49 / 13
Регистрация: 21.04.2009
Сообщений: 265
24.06.2011, 13:28  [ТС]
ForEveR, ну я так и думал.
а теперь скажите, почему у меня эта прога не компилируется? Только что, разбил на файлы как посоветовал охотник, компилировал в wxDev-cpp.

1.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <cstdlib>
#include <iostream>
 
int main(int argc, char *argv[])
{    
    time time1(5, 59, 59);
    time time2(4,30,30);
    time time3;
    time3.add_time(time1, time2);
    std::cout << "time3 = " << time3.display;
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
time1.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#ifndef TIME1_H
#define TIME1_H
 
class time
{
      private:
              int hrs, mins, secs;
      public:
            
             time() : hrs(0), mins(0), secs(0)
             {}
             time(int h, int m, int s) : hrs(h), mins(m), secs(s)
             {}
             void display();
             void add_time(time t1, time t2);             
};
 
#endif
time1.cpp

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 "time1.h"
 
void time::display()
{
     std::cout << hrs << ":" << mins << ":" << secs << "\n";
}
void time::add_time(time t1, time t2)
{
     secs = t1.secs + t2.secs;
     if(secs > 59)
     {
             secs = secs - 60;
             mins++;
     }
     mins = t1.mins + t2.mins;
     if(mins > 59)
     {
             mins = mins - 60;
             hrs++;
     }
     hrs = t1.hrs + t2.hrs;
}
может кто подскажет? Ну или у кого компилируется, напишите какой у вас компилятор.
ЗЫ. Пробовал компилировать другие проекты с классами- все норм.
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
24.06.2011, 13:33
time1.h надо подключать во всех модулях .cpp, где используется класс time

Добавлено через 1 минуту
Ну и ошибка в строке 10 файла 1.cpp так и не была исправлена
1
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
24.06.2011, 13:34
Не советую я так класс называть. Или в namespace хоть завертывайте.
2
 Аватар для grrrrr
49 / 49 / 13
Регистрация: 21.04.2009
Сообщений: 265
24.06.2011, 13:41  [ТС]
ForEveR, точно!!! теперь вот ошибка одна ошибка:

47 C:\Dev-Cpp\projects\1\new.cpp statement cannot resolve address of overloaded function

ругается на 2 строку

C++
1
2
std::cout << "time3 = ";
time3.display;
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
24.06.2011, 13:45
grrrrr, Ну дык это ж вызов функции все таки. Скобки забыли.
1
 Аватар для grrrrr
49 / 49 / 13
Регистрация: 21.04.2009
Сообщений: 265
24.06.2011, 13:49  [ТС]
Все работает! Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.06.2011, 13:49
Помогаю со студенческими работами здесь

Что-то с компилятором... Наверное...
# include &lt;iostream&gt; using namespace std; int main(){ int n,a=0,b=0,c=0,t=0; cin&gt;&gt;n; int j=n,i=n/2; while (j&gt;0){ ...

есть ошибки в программе, может что то с компилятором у меня, подскажите пожалуйста.
Программа для решения обычных уравнений методом адамса, не работает.... 3 ошибки здесь: #include &lt;math.h&gt; #include...

Что не так с кодом? ( пытаюсь понять, что не так? )
Есть исходный код. Hook, работает хорошо, но есть минус огромный - перестаёт писать в лог, при открытии программы\игры Фуллскрином. т.е...

И так, что не так с моим запросом на добавление записи в таблицу?
$sql = 'INSERT INTO product ' . '(name, code, price, category_id, brand, availability,' . 'description,...

Как сделать так что я мог умножать не на два числа а на 3,4,5 и так далее?
Вот код: #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main(){ float a,c; char b; skip: ...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru