реклама на сайте
подробности

 
 
> Функция, выполняющая действия с аргументами разных типов, Как сделать перегрузку функции
alux
сообщение Jun 14 2007, 20:18
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 589
Регистрация: 24-04-05
Пользователь №: 4 447



Т.е. чтобы в функцию передавался аргумент, который может быть как unsigned char , так и signed char.
Сейчас у меня работает так::
//Глобальные переменные
unsigned char* ptr;
unsigned char val;
signed char offset;
void valcodr(void);

//Определение
void valcoder(void)
{
выполняет действия с ptr;
}

//Вызов функции, которая изменяет переменную val
ptr=&val;
valcoder();

Вопрос. Как теперь заставить функцию работать с знаковой переменной offset? Возможна ли такая перегрузка функции?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
vet
сообщение Jun 15 2007, 07:13
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 550
Регистрация: 16-06-04
Из: Казань
Пользователь №: 32



Термин "перегруженная функция" означает две или больше функций, которые работают с разным числом и типом аргументов, но носят одно и то же имя. Такое допустимо в С++; соответственно, модуль, в котором они описаны, должен быть написан на С++ и объявлен в проекте, как С++ модуль.
А так ли оно нужно в данном случае? может, достаточно простого приведения типа переменной?


--------------------
Главная линия этого опуса ясна мне насквозь!
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 5th August 2025 - 19:12
Рейтинг@Mail.ru


Страница сгенерированна за 0.01397 секунд с 7
ELECTRONIX ©2004-2016