набрал пример по книге, но он не работает
программа многоцелевой сортировки использующая указатели на функции
(mvs2008) Код:
//------------------------------------------------------- 1>------ Построение начато: проект: программа_многоцелевой_сортировки, Конфигурация: Debug Win32 ------ 1>Компиляция... 1>unit.cpp 1>Компоновка... 1>unit.obj : error LNK2019: ссылка на неразрешенный внешний символ "void __cdecl bubble(int *,int,int (__cdecl*)(int,int))" (?bubble@@YAXPAHHP6AHHH@Z@Z) в функции _main 1>C:\Documents and Settings\Admin\Мои документы\Visual Studio 2008\Projects\программа_многоцелевой_сортировки\Debug\программа_многоцелевой_сортировки.exe : fatal error LNK1120: 1 неразрешенных внешних элементов 1>Журнал построения был сохранен в "file://c:\Documents and Settings\Admin\Мои документы\Visual Studio 2008\Projects\программа_многоцелевой_сортировки\программа_многоцелевой_сортировки\Debug\BuildLog.htm " 1>программа_многоцелевой_сортировки - ошибок 2, предупреждений 0 ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ========== в чем ошибка? |
котвася, Помню этот пример в книге Дейтелов.
Код:
void bubble(int *, const int, int(*)(int,int)); |
именно из нее
|
раз тут есть знающие люди, спрошу еще один вопрос. По этой книге .
Пример снова не работает: Код:
//FIG6_5.CPP 1>Компиляция... 1>FIG6_5.cpp 1>c:\$p\mvs\{как программировать на с++}\драйвер_класса_time\драйвер_класса_time\fig6_5.cpp(29) : error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию 1>c:\$p\mvs\{как программировать на с++}\драйвер_класса_time\драйвер_класса_time\fig6_5.cpp(29) : error C2556: int Time::setTime(int,int,int): перегруженная функция отличается от 'void Time::setTime(int,int,int)' только возвращаемым типом 1> c:\$p\mvs\{как программировать на с++}\драйвер_класса_time\драйвер_класса_time\fig6_5.cpp(12): см. объявление 'Time::setTime' 1>c:\$p\mvs\{как программировать на с++}\драйвер_класса_time\драйвер_класса_time\fig6_5.cpp(29) : error C2371: Time::setTime: переопределение; различные базовые типы 1> c:\$p\mvs\{как программировать на с++}\драйвер_класса_time\драйвер_класса_time\fig6_5.cpp(12): см. объявление 'Time::setTime' 1>c:\$p\mvs\{как программировать на с++}\драйвер_класса_time\драйвер_класса_time\fig6_5.cpp(62) : error C2264: Time::setTime: ошибка в определении или объявлении функции; функция не вызвана 1>Журнал построения был сохранен в "file://c:\$p\mvs\{как программировать на с++}\драйвер_класса_Time\драйвер_класса_Time\Debug\BuildLog.htm" 1>драйвер_класса_Time - ошибок 4, предупреждений 0 ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ========== О ЭВРИКА, САМ ДОКУМЕКАЛ!! вот: Код:
void Time::setTime(int h, int m, int s) |
Еще один пример, если можно:
Код:
//MAIN.CPP |
Цитата:
Код:
// ГЛАВА 8. рисунок 8.3 |
Ха
работает! тему закрывать не буду, может еще какие-нибудь вопросы будут. |
Цитата:
|
я был просто удивлен, когда увидел:
Код:
..................... |
котвася, Так одну ж книгу читаем, чего ж ты пропустил-то?
|
Drongo, вроде не упоминалось про вывод.
|
котвася, Прочти ещё раз внимательно, я ведь откуда-то нашёл же. :) Возможно в самом листинге кода в книге...
|
Drongo нашел, но дальше по тексту. На то время еще не дочитал :)
|
котвася, Отож, я примерно неделю на изучение глав и с получается так что с пятницы до воскресенья, решаю задания по книге после прочтения главы. :)
|
Вот еще бы один пример.
Код:
//TSTACK.H Код:
//TSTACK.CPP Код:
//MAIN.CPP 1>------ Построение начато: проект: Stack, Конфигурация: Debug Win32 ------ 1>Компиляция... 1>main.cpp 1>c:\$p\mvs\{как программировать на с++}\сотировка_пузырек_сlass\сотировка_пузырек_сlass\main.cpp(11) : warning C4305: инициализация: усечение из 'double' к 'float' 1>c:\$p\mvs\{как программировать на с++}\сотировка_пузырек_сlass\сотировка_пузырек_сlass\main.cpp(17) : warning C4305: +=: усечение из 'double' к 'float' 1>Создание кода... 1>Пропуск... (изменения не обнаружены) 1>TStack.cpp 1>Компоновка... 1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall Stack<int>::pop(int &)" (?pop@?$Stack@H@@QAEHAAH@Z) в функции _main 1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall Stack<int>::push(int const &)" (?push@?$Stack@H@@QAEHABH@Z) в функции _main 1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Stack<int>::Stack<int>(int)" (??0?$Stack@H@@QAE@H@Z) в функции _main 1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall Stack<float>::pop(float &)" (?pop@?$Stack@M@@QAEHAAM@Z) в функции _main 1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall Stack<float>::push(float const &)" (?push@?$Stack@M@@QAEHABM@Z) в функции _main 1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Stack<float>::Stack<float>(int)" (??0?$Stack@M@@QAE@H@Z) в функции _main 1>C:\$p\mvs\{как программировать на с++}\Сотировка_пузырек_Сlass\Debug\Stack.exe : fatal error LNK1120: 6 неразрешенных внешних элементов 1>Журнал построения был сохранен в "file://c:\$p\mvs\{как программировать на с++}\Сотировка_пузырек_Сlass\Сотировка_пузырек_Сlass\Debug\BuildLog.htm" 1>Stack - ошибок 7, предупреждений 2 ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ========== |
странно но решил :)
|
Время: 15:50. |
Время: 15:50.
© OSzone.net 2001-