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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
[C++] Return
4 / 4 / 1
Регистрация: 11.09.2012
Сообщений: 110
#1

Объявление функции с необязательными параметрами - C++

07.08.2013, 09:42. Просмотров 700. Ответов 9
Метки нет (Все метки)

Как объявить функцию с необязательными параметрами?
Например в этой функции сделать int z необязательным параметром

C++
1
2
3
void func_getcoord(int x, int y, int z)
{
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.08.2013, 09:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Объявление функции с необязательными параметрами (C++):

Задачник Абрамян. Процедуры и функции. Функции с числовыми параметрами - C++
Описать функцию Even(K) логического типа, возвращающую TRUE, если целый параметр K является четным, и FALSE в противном случае. С ее...

объявление функции - C++
допустим у меня есть программа она использует из библиотеке conio.h функцию getch() вот мне интересно как в программе подключить эту...

Объявление функции - C++
Завдання 1 Створити функцію яка приймає на вхід посилання на карту з ключем цілого типу,та значенням з плаваючою точкою. Другим...

Объявление функции - C++
Всем доброго времени суток! Подскажите пожалуйста, как правильно объявить функцию, которая возвращает указатель на двумерный массив. И...

Объявление функции - C++
Что значит подобное объявление: int f() const; Для чего этот "const" ?

Правильное объявление функции - C++
Честно перекопировал курсач. Возникла такая ошибка: Unit1.cpp(507): E2316 'TForm1::find_gor(int,int,int,int,int,int,float * *,float *...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
0x10
2460 / 1632 / 238
Регистрация: 24.11.2012
Сообщений: 4,015
07.08.2013, 09:45 #2
Цитата Сообщение от [C++] Return Посмотреть сообщение
void func_getcoord(int x, int y, int z = 0)
Как-то так.
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
07.08.2013, 10:07 #3
Как вариант (довольно сомнительный) - использование перегрузки:
C++
1
2
void func_getcoord(int x, int y, int z);
void func_getcoord(int x, int y);
Catstail
Модератор
22535 / 10940 / 1774
Регистрация: 12.02.2012
Сообщений: 18,078
07.08.2013, 10:25 #4
А вот так:

C++
1
тип func(тип n, ...)
можно определить функцию с переменным числом параметров.
0x10
07.08.2013, 10:27
  #5

Не по теме:

Catstail, можно, но не нужно.

Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
07.08.2013, 10:28 #6
Цитата Сообщение от Catstail Посмотреть сообщение
можно определить функцию с переменным числом параметров.
а потом трахаться со списком параметров, да еще и без проверки типов.
Лучше уж сразу variadic template
Catstail
Модератор
22535 / 10940 / 1774
Регистрация: 12.02.2012
Сообщений: 18,078
07.08.2013, 10:53 #7
Цитата Сообщение от Tulosba Посмотреть сообщение
да еще и без проверки типов
- это не совсем так... В приведенной мной строчке все параметры - одного типа (заданного). Кстати, навязчивая проверка типов раздражает
0x10
2460 / 1632 / 238
Регистрация: 24.11.2012
Сообщений: 4,015
07.08.2013, 10:56 #8
Цитата Сообщение от Catstail Посмотреть сообщение
В приведенной мной строчке все параметры - одного типа (заданного).
Так в качестве списка аргументов можно ведь передать что угодно.
Tulosba
07.08.2013, 10:59
  #9

Не по теме:

Цитата Сообщение от Catstail Посмотреть сообщение
Кстати, навязчивая проверка типов раздражает
А предварительное объявление переменных? Помнится в бейсике раньше было веселье: сделал опечатку в формуле, а он решил, что это новая переменная. Всё собирается, ошибок как бы нет. Но результат не тот.

Catstail
Модератор
22535 / 10940 / 1774
Регистрация: 12.02.2012
Сообщений: 18,078
07.08.2013, 11:15 #10
Цитата Сообщение от Tulosba Посмотреть сообщение
А предварительное объявление переменных
- меня - тоже. Бэйсик люблю за то, что можно объявлять переменные с суффиксами типов (% - int, &-long и т.д.). И у меня не бывает проблем с неописанными переменными. Как-то мне удается уже 20 лет не делать опечаток... Чего не хватает в Бэйсике, так это указателей.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.08.2013, 11:15
Привет! Вот еще темы с ответами:

Объявление функции в шаблоне - C++
Здравствуйте. Как правильно объявить в шаблонном классе оператор / функцию: без указания типа: const Polynomial operator+(const...

Объявление шаблонной функции - C++
Здравствуйте, встретил в учебнике это: template <typename Type, int size> Type min( Type (&r_array) ) { //... }

Объявление функции с массивом - C++
Сейчас задам очень странный вопрос) Что это значит: int F1(char) не могу понять)) спасибо! Добавлено через 25 минут и вот ещё...

Объявление функции (непонятно) - C++
Не могу понять, чем отличаются объявления функции в 1 и 2 вариантах? Смысл писать в 1 ванианте отдельно прототип функции(первую строчку:...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
07.08.2013, 11:15
Ответ Создать тему
Опции темы

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