Форум программистов, компьютерный форум CyberForum.ru

Ссылка на неразрешенную лексему при работе с шаблоном - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нужна программка http://www.cyberforum.ru/cpp-beginners/thread989342.html
Надо создать в динамической памяти матрицу и определить в ней все строки и столбцы, в которых встречаются одинаковые элементы. Помогите пожалуйста, а то я в этом совсем ничего не понимаю.
C++ Бистрая сортировка Как правильно использовать функцию Qsort (как ее использовать для таких типов данных как char, long long int, short?), как ее можно использовать без этой функции (или подскажите более скоростную функцию, которая может заменить эту): int compare (const void* a, const void* b){ return *(int *)a - *(int *)b; } http://www.cyberforum.ru/cpp-beginners/thread989341.html
C++ Как сделать фото товара в 4 колонки?
создаю сайт, застрял на этапе выравнивания каталога товаров. Пропишите пожалуйста код в CSS для выравнивания фотографий на главной странице в 4 столбца.
Найти произведение цифр числа C++
1. Найдите сумму положительных четных чисел меньших 100. 2. Дано целое число K. Найти произведение цифр числа К. 3. Найти сумму десяти чисел кратных 3. все программы должны быть с использованием оператора цикла for. Спасибо
C++ класс на основе заданной структуры данных http://www.cyberforum.ru/cpp-beginners/thread989315.html
Необходимо разработать программу, реализующую простой класс на основе заданной структуры данных. Код я смогла написать не знаю конечно может и не совсем правильно я только начинаю учить С++. Помогите найти ошибку ( а то программа не хочет работать ( #include <conio.h> #include <cstdlib> #include <stdlib.h> using namespace std; class myclass {
C++ как с использованием списка реализовать следущее как с использованием списка реализовать следущее: взявши произвольный текст, вывести в консоль все слова, которые начинаются с буквы, отличной от буквы, с которой начинается первое слово текста. Перед печатью удалить из слов все буквы 'a' и 'o'. подробнее

Показать сообщение отдельно
Egor138
 Аватар для Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
27.10.2013, 13:13     Ссылка на неразрешенную лексему при работе с шаблоном
Никак не могу понять с чем связанна эта ошибка

C++
1
2
3
4
5
error LNK2028: ссылка на неразрешенную лексему (0A0003B6) "void __cdecl Connect<class Element,class F,void (__thiscall F::*)(void)>(class Element *,class Event *,class F *,void (__thiscall F::*)(void))" (??$Connect@VElement@@VF@@P82@AEXXZ@@$$FYAXPAVElement@@PAVEvent@@PAVF@@P82@AEXXZ@Z) в функции "int __cdecl main(void)" (?main@@$$HYAHXZ)
 
error LNK2019: ссылка на неразрешенный внешний символ "void __cdecl Connect<class Element,class F,void (__thiscall F::*)(void)>(class Element *,class Event *,class F *,void (__thiscall F::*)(void))" (??$Connect@VElement@@VF@@P82@AEXXZ@@$$FYAXPAVElement@@PAVEvent@@PAVF@@P82@AEXXZ@Z) в функции "int __cdecl main(void)" (?main@@$$HYAHXZ)
 
fatal error LNK1120: 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
26
27
28
29
30
31
32
33
34
35
36
37
38
#ifndef ELEM_H
#define ELEM_H
#include <vector>
#include "Delegate.h"
using std::vector;
 
struct IDeleg {};
 
template< class Reciv_Type >
struct  Deleg : public IDeleg
{
    Deleg(Reciv_Type* rec, Delegate* del) : deleg(del), reciv(rec) {}
    Delegate* deleg;
    Reciv_Type* reciv;
};
 
 
class Event
{
public:
    Event() {}
 
    template< class Reciv_Type >
    void push_back(Deleg<Reciv_Type> *deleg);
 
    template< class Reciv_Type >
    void operator()(Reciv_Type *reciv);
 
private:
    vector<IDeleg*> Contain;
};
 
template< class Reciv_Type, class Trans_Type, class B >
void Connect(Reciv_Type* reciv, Event* signal, Trans_Type* trans, B slot);
 
extern Event sh;
 
#endif
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
24
25
26
27
28
#include "Event.h"
Event sh;
 
template< class Reciv_Type >
void Event::push_back(Deleg<Reciv_Type> *deleg)
{
    Contain.push_back(deleg);
}
 
template< class Reciv_Type >
void Event::operator()(Reciv_Type *reciv)
{
    for(size_t i=0; i<Contain.size(); ++i)
    {
        if(reciv == Containt[i]->reciv) 
            Containv[i]->deleg();
    }
}
 
template< class Reciv_Type, class Trans_Type, class B >
void Connect(Reciv_Type* reciv, Event* signal, Trans_Type* trans, B slot)
{
    Delegate *deleg = new Delegate;
    deleg->Connect(trans, slot);
    Deleg<Reciv_Type> *temp = new Deleg<Reciv_Type>(reciv, deleg);
 
    signal->push_back(temp);
}
И вызов функции из main

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class F
{
public:
    void Fun() {}
};
 
void main()
{
    Element el;
    F obj;
 
    Connect(&el, &sh, &obj, &F::Fun);
    system("pause >void");
}
Помогите пожалуйства разобраться, все перепробовал
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru