Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
 Аватар для v.a.l.i.d
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913

Программа не компилируется при перестановке прототипов шаблонных функций

07.01.2013, 22:27. Показов 660. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если переставить местами прототипы функций то программа не скомпилируется. Почему?
В первой все хорошо, а вторая не компилируется только из-за того, что переставил местами функции Swap.

1.
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
#include "stdafx.h"
#include "iostream"
using namespace std;
 
struct Job
{
    char name[40];  
    double salary;      
    int floor;          
};
 
template <typename t>
void Swap(t &a, t &b);
 
template <>
void Swap<Job>(Job &j1, Job &j2);
 
int _tmain(int argc, _TCHAR* argv[])
{
 
    
 
    system("pause");
    return 0;
}

// -------------------------------------------------------------

2.
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
#include "stdafx.h"
#include "iostream"
using namespace std;
 
struct Job
{
    char name[40];  
    double salary;      
    int floor;          
};
 
template <>
void Swap<Job>(Job &j1, Job &j2);
 
template <typename t>
void Swap(t &a, t &b);
 
int _tmain(int argc, _TCHAR* argv[])
{
 
    
 
    system("pause");
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.01.2013, 22:27
Ответы с готовыми решениями:

вопрос по поводу Функций прототипов
Еще раз доброго времени суток, я перекидал по файлам фрагменты кода структуру в .h основной код в .cpp и в главной функции отказался...

Не компилируется программа из-за необъявленных функций
Здравствуйте, не компилируется программа так как, выводится сообщение о не декларируемые функциях, вот само сообщение: 4.c: In...

Найти описание прототипов функций
Найти описание прототипов функций на &quot;c#&quot; (написать программу) Что здесь вообще делать нужно?

2
~ Эврика! ~
 Аватар для OhMyGodSoLong
1258 / 1007 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
07.01.2013, 22:32
Если переставить местами определения классов, то программа не скомпилируется. Почему?
В первой все хорошо, а вторая не компилируется только из-за того, что перенёс определение предка после наследника.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
struct Job
{
    char name[40];  
    double salary;      
    int floor;          
};
 
struct Bork : Job
{
    float zog;
};
 
int main()
{
    Bork foo;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
struct Bork : Job
{
    float zog;
};
 
struct Job
{
    char name[40];  
    double salary;      
    int floor;          
};
 
int main()
{
    Bork foo;
}
Метафора понятна?
1
 Аватар для v.a.l.i.d
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
07.01.2013, 22:43  [ТС]
Цитата Сообщение от ~OhMyGodSoLong~ Посмотреть сообщение
Метафора понятна?
Да, теперь все понятно. Спасибо
Хороший пример со структурами
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.01.2013, 22:43
Помогаю со студенческими работами здесь

константа и аргументы прототипов функций :(
тiльки що в мене на компiлятор збудилося питання.. чому оголошена константа не може використовуватися як аргумент прототипу функцii.. ...

Спецификатор extern для прототипов функций
accept, ну видимо хочет человек понять как разбивать сорц на единицы трансляции. Это верно. Nickstery, в header.h перед описанием...

Средство для автоматизированного создания прототипов функций из dll
есть dll, к примеру kernel32.dll, как известно можно просмотреть список экспортируемых ей функций и кол-во передаваемых ей параметров...

Не компилируется при вызове функций user32 на VC2008
Недавно установил Visual C++ express 2008.Выдает ошибку при вызове EnumDisplayMonitors.Это вроде стандартная функция из...

Использование шаблонных функций
Всем привет) Очень нужна помощь. нужно написать прогу для поиска максимального и минимального значения линейного массива, подогнать её...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
[В процессе разработки] SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru