0 / 0 / 0
Регистрация: 27.07.2014
Сообщений: 35
|
||||||||||||||||
1 | ||||||||||||||||
Ошибка при сборке многофайлового проекта: "невозможно преобразовать "int" в "const golf"26.01.2016, 20:14. Показов 2524. Ответов 35
Метки нет (Все метки)
Сделал многофайловую программу программу, вот она:
Причина: невозможно преобразовать "int" в "const golf" 1> Исходный или конечный объект имеет неполный тип Прошу вас помочь и объяснить, что я сделал не так. Заранее спасибо
0
|
26.01.2016, 20:14 | |
Ответы с готовыми решениями:
35
Ошибка при сборке проекта. Невозможно запустить qmake Невозможно преобразовать параметр 3 из 'const wchar_t [20]' в 'int' Невозможно преобразовать параметр из int в const char Ошибка error C2440: инициализация: невозможно преобразовать 'int' в 'int []' Ошибка при компиляции многофайлового проекта |
0 / 0 / 0
Регистрация: 27.07.2014
Сообщений: 35
|
|
26.01.2016, 20:50 [ТС] | 3 |
спасибо за ответ
Добавлено через 3 минуты но файл всё ровно не компилируется
0
|
19405 / 10024 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
|
||||||
26.01.2016, 21:05 | 6 | |||||
А здесь логическая ошибка:
Подозреваю, что имелось в виду нечто такое:
mulicharacter literal имеет тип int. Условие не будет работать правильно.
0
|
0 / 0 / 0
Регистрация: 27.07.2014
Сообщений: 35
|
|
26.01.2016, 21:08 [ТС] | 7 |
А как мне написать условие чтобы работало правильно?
0
|
43 / 43 / 20
Регистрация: 08.12.2010
Сообщений: 342
|
|
26.01.2016, 21:08 | 9 |
kirillivankin, Дак скажи где ошибки. Не можешь сформулировать просто закопируй строки ошибок
0
|
0 / 0 / 0
Регистрация: 27.07.2014
Сообщений: 35
|
|
26.01.2016, 21:11 [ТС] | 11 |
мне нужно чтобы функция setgolf проверяла есть ли в массиве имя и если в массиве пустая строка возвращала значение 0, а если имя возвращала значение 1
0
|
43 / 43 / 20
Регистрация: 08.12.2010
Сообщений: 342
|
|
26.01.2016, 21:14 | 12 |
kirillivankin, С твоим кодом навскидку, если работают эти адские ковычки, он у тебя на первом пробеле скажет, что строка пустая
0
|
19405 / 10024 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
|
||||||
26.01.2016, 21:19 | 13 | |||||
kirillivankin, Имя - это любая непустая строка что-ли? Тогда можно так:
Это multicharacter character literal. И этот код не будет работать так, как автор ждет. И вообще нормальный компилятор предупреждает об этом.
1
|
0 / 0 / 0
Регистрация: 27.07.2014
Сообщений: 35
|
|
26.01.2016, 21:34 [ТС] | 14 |
чуть чуть переделал код всё тоже самое
вот ошибки: Кликните здесь для просмотра всего текста
1>------ Сборка начата: проект: ConsoleApplication7, Конфигурация: Release Win32 ------
1> ConsoleApplication7.cpp 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.h(4): error C2370: Len: переопределение; другой класс хранения 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.h(4): см. объявление "Len" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.h(6): error C2011: golf: переопределение типа "struct" 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.h(6): см. объявление "golf" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(5): error C2027: использование неопределенного типа "golf" 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.h(6): см. объявление "golf" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(5): error C2228: выражение слева от ".fullname" должно представлять класс, структуру или объединение 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(9): error C2027: использование неопределенного типа "golf" 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.h(6): см. объявление "golf" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(9): error C2228: выражение слева от ".fullname" должно представлять класс, структуру или объединение 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.h(6): см. объявление "golf" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(9): error C2228: выражение слева от ".handicap" должно представлять класс, структуру или объединение 1>ConsoleApplication7.cpp(10): error C2079: "g" использует неопределенный struct "golf" 1>ConsoleApplication7.cpp(13): error C2228: выражение слева от ".fullname" должно представлять класс, структуру или объединение 1> тип: int 1>ConsoleApplication7.cpp(15): error C2228: выражение слева от ".fullname" должно представлять класс, структуру или объединение 1> тип: int 1>ConsoleApplication7.cpp(22): error C2228: выражение слева от ".handicap" должно представлять класс, структуру или объединение 1> тип: int 1>ConsoleApplication7.cpp(23): error C2664: "int setgolf(const golf &)": невозможно преобразовать аргумент 1 из "int" в "const golf &" 1> Причина: невозможно преобразовать "int" в "const golf" 1> Исходный или конечный объект имеет неполный тип 1>ConsoleApplication7.cpp(28): error C2664: "void showgolf(const golf &)": невозможно преобразовать аргумент 1 из "int" в "const golf &" 1> Причина: невозможно преобразовать "int" в "const golf" 1> Исходный или конечный объект имеет неполный тип ========== Сборка: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ========== среда Microsoft visual studio - не предупреждает о каких либо ошибках
0
|
26.01.2016, 21:35 | 15 |
А что именно ты там переделал мы конечно же должны догадаться сами?
С таким подходом я вообще не вижу смысла заниматься программированием и задавать вопросы на форуме.
0
|
19405 / 10024 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
|
|
26.01.2016, 21:39 | 16 |
По смыслу этот файл должен быть *.cpp, а не *.h.
Хотя бы часть ошибок должна уйти. Добавлено через 1 минуту В этом случае делать не надо.
0
|
0 / 0 / 0
Регистрация: 27.07.2014
Сообщений: 35
|
||||||||||||||||
26.01.2016, 22:02 [ТС] | 17 | |||||||||||||||
вот переделанный код:
Кликните здесь для просмотра всего текста
1>------ Сборка начата: проект: ConsoleApplication7, Конфигурация: Release Win32 ------
1> ConsoleApplication7.cpp 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.cpp(4): error C2370: Len: переопределение; другой класс хранения 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.cpp(4): см. объявление "Len" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.cpp(6): error C2011: golf: переопределение типа "struct" 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.cpp(6): см. объявление "golf" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(5): error C2027: использование неопределенного типа "golf" 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.cpp(6): см. объявление "golf" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(5): error C2228: выражение слева от ".fullname" должно представлять класс, структуру или объединение 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(9): error C2027: использование неопределенного типа "golf" 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.cpp(6): см. объявление "golf" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(9): error C2228: выражение слева от ".fullname" должно представлять класс, структуру или объединение 1> c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golf.cpp(6): см. объявление "golf" 1>c:\my documents\visual studio 2013\projects\consoleapplication7\consoleapplication7\golfPROT.h(9): error C2228: выражение слева от ".handicap" должно представлять класс, структуру или объединение 1>ConsoleApplication7.cpp(10): error C2079: "g" использует неопределенный struct "golf" 1>ConsoleApplication7.cpp(13): error C2228: выражение слева от ".fullname" должно представлять класс, структуру или объединение 1> тип: int 1>ConsoleApplication7.cpp(15): error C2228: выражение слева от ".fullname" должно представлять класс, структуру или объединение 1> тип: int 1>ConsoleApplication7.cpp(22): error C2228: выражение слева от ".handicap" должно представлять класс, структуру или объединение 1> тип: int 1>ConsoleApplication7.cpp(23): error C2664: "int setgolf(const golf &)": невозможно преобразовать аргумент 1 из "int" в "const golf &" 1> Причина: невозможно преобразовать "int" в "const golf" 1> Исходный или конечный объект имеет неполный тип 1>ConsoleApplication7.cpp(28): error C2664: "void showgolf(const golf &)": невозможно преобразовать аргумент 1 из "int" в "const golf &" 1> Причина: невозможно преобразовать "int" в "const golf" 1> Исходный или конечный объект имеет неполный тип ========== Сборка: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ========== после того как изменид golf.h на golf.cpp ничего не изменилось
0
|
19405 / 10024 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
|
|
26.01.2016, 22:10 | 18 |
Я разве ТАК говорил делать?
golfPROT.h, а не golf.h. У тебя должно быть три файла. golf.h (как он есть в исходном - первом сообщении). golfPROT.cpp - подключает golf.h, (содержимое как в первом сообщении - с определениями функций). main.cpp - подключает только golf.h
0
|
0 / 0 / 0
Регистрация: 27.07.2014
Сообщений: 35
|
|
27.01.2016, 16:21 [ТС] | 19 |
внёс эти правки, но появились новые ошибки
1>ConsoleApplication7.obj : error LNK2001: неразрешенный внешний символ ""int __cdecl setgolf(struct golf const &)" (?setgolf@@YAHABUgolf@@@Z)" 1>ConsoleApplication7.obj : error LNK2001: неразрешенный внешний символ ""void __cdecl showgolf(struct golf const &)" (?showgolf@@YAXABUgolf@@@Z)" 1>C:\my documents\Visual Studio 2013\Projects\ConsoleApplication7\Release\ConsoleApplication7.exe : fatal error LNK1120: неразрешенных внешних элементов: 2 ========== Сборка: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
0
|
337 / 185 / 80
Регистрация: 22.08.2013
Сообщений: 724
|
|
27.01.2016, 16:25 | 20 |
Реализаций void isetgolf(const golf & p) и void showgolf(const golf & q) не видит. Где они у тебя?
0
|
27.01.2016, 16:25 | |
27.01.2016, 16:25 | |
Помогаю со студенческими работами здесь
20
Ошибка: невозможно преобразовать аргумент 1 из int** в int [][1000] Ошибка: невозможно преобразовать параметр 4 из 'int' в 'int []' Ошибка С2664: невозможно преобразовать параметр 1 из 'double' в 'const char *' Невозможно преобразовать параметр 1 из 'const char [3]' в 'const wchar_t * Ошибка 1 error C2664: CFileFind::FindFile: невозможно преобразовать параметр 1 из 'const char [7]' в 'LPCTSTR' Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |