Ошибка: нет соответствующей функции для вызова, однако я считаю, что параметры функции совпадают [закрыто]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка: нет соответствующей функции для вызова, однако я считаю, что параметры функции совпадают [закрыто]

Сообщение Anonymous »


Для практики C++ я разрабатываю собственное (шаблонное) двоичное дерево поиска. Я столкнулся с проблемой с моими функциями «печати», которые я собираюсь пройти по дереву и заполнить его печатную структуру. Я получаю сообщение об ошибке «Нет соответствующей функции для вызова» от компоновщика, хотя считаю, что тип входного параметра для рассматриваемого метода (printFromTail) правильный.

TreeNode.h (TreeNode.cpp — это заглушка, поскольку методы шаблона должны быть в заголовке...)

#include #include #include используя std::string; используя стандартный:: список; шаблон класс TreeNode { частный: значение Т; TreeNode * родительский; TreeNode * слева; TreeNode * правильно; статическая структура list; публика: TreeNode (T val); пустая вставка (T val); TreeNode * find(T val); TreeNode * максимум(); TreeNode * минимум(); Т получить значение(); bool удалить (T val); void printFromTail (хвост строки); недействительная печать(); //другой класс Tree; }; // // определения функций // не имеет отношения к этой проблеме.. // шаблон void printFromTail (хвост строки) { // добавляем в структуру list } шаблон недействительная печать() { строка пустая = ""; вернуть printFromTail(пусто); } Я ожидаю, что компоновщик прекрасно справится с этим. printFromTail принимает строковый аргумент, и я передаю ему строку в методе print(). Однако компоновщик говорит:
philipb@Philips-MacBook-Pro Tree2 % g++ -g *.cpp -o TreeMain В файле, включенном в TreeMain.cpp:2: ./TreeNode.h:214:12: ошибка: нет соответствующей функции для вызова printFromTail. вернуть printFromTail(пусто); ^~~~~~~~~~~~~ ./TreeNode.h:204:6: примечание: шаблон-кандидат игнорируется: не удалось вывести аргумент шаблона 'T' void printFromTail (хвост строки) ^ Возникла 1 ошибка. В файле, включенном в TreeNode.cpp:1: ./TreeNode.h:214:12: ошибка: нет соответствующей функции для вызова printFromTail. вернуть printFromTail(пусто); ^~~~~~~~~~~~~ ./TreeNode.h:204:6: примечание: шаблон-кандидат игнорируется: не удалось вывести аргумент шаблона 'T' void printFromTail (хвост строки) ^ Возникла 1 ошибка.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»