Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
KrekerOK
57 / 57 / 20
Регистрация: 04.07.2013
Сообщений: 524
Завершенные тесты: 1
1

Шаблонные функции

12.04.2014, 11:32. Просмотров 321. Ответов 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
template <class T> void Main_register::badc(T *regist, T term)
{
    int count_bit = sizeof(term)*8;
    char remainder=0, s1, s2, masc;
    for (Int64 i=0;i<count_bit;i++)
    {
        s1 = *regist & Convert::ToInt64(1<<i)?1:0;
        s2 = term & Convert::ToInt64(1<<i)?1:0;
        if((s1+s2+remainder)%2!=0)
            *regist |= Convert::ToInt32(1<<i);
        else
        {
            masc ^= masc;
            masc |= Convert::ToInt64(1<<i);
            masc = ~masc;
            *regist &= masc;
        }
        if((s1+s2+remainder)>=2)
            remainder = 1;
        else
            remainder = 0;
    }
}
Это её вызов, где m_r - класс в котором описана функция(так работает):
C++
1
2
 int x = 10, y = 20;
 m_r->badc(&x,y);
Но, если я хочу передать в функцию те же х и у как char, то я вызываю так:
C++
1
2
 int x = 10, y = 20  
m_r->badc((char)(&x),(char)y);
Вот тут и появляется ошибка:
error C2784: void Main_register::badc(T *,T): не удалось вывести аргумент шаблон для "T *" из "char"
Что-то я толком не могу понять чего ему надо, подскажите пожалуйста кто знает.

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.04.2014, 11:32
Ответы с готовыми решениями:

Шаблонные функции
Такой код работает. #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;cstring&gt; using namespace...

Шаблонные функции
Читал у Праты про шаблонные функции, и везде они описаны наподобие template &lt;typename Any&gt; void...

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

Шаблонные функции
Чет не получается написать шаблонную функцию. func.h template &lt;class T&gt; T strnstr (T str, T...

Шаблонные функции в C++
Каждый раз когда вижу код, который должен быть простым и понятным, я понимаю его немного хуже. Вот...

2
StailGot
28 / 23 / 12
Регистрация: 25.08.2013
Сообщений: 41
12.04.2014, 12:44 2
Цитата Сообщение от KrekerOK Посмотреть сообщение
emplate <class T> void Main_register::badc(T *regist, T term)
Тут T *regist - указатель, а здесь
Цитата Сообщение от KrekerOK Посмотреть сообщение
m_r->badc((char)(&x),(char)y);
адрес приводится к числу типа char.

Попробуйте так
C++
1
m_r->badc((char*)(&x),(char)y);
1
KrekerOK
57 / 57 / 20
Регистрация: 04.07.2013
Сообщений: 524
Завершенные тесты: 1
12.04.2014, 12:51  [ТС] 3
Работает. Огромное Вам спасибо!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.04.2014, 12:51

Шаблонные функции
Помогите, пожалуйста, реализовать шаблонную функцию, которая переставляет элементы в массиве

Шаблонные функции
Помогите, пожалуйста, реализовать шаблонную функцию определения, есть ли число в массиве

Шаблонные функции
1) Написать шаблонную функцию для нахождения минимального из трех передаваемых чисел (для чисел...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru