Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.09.2014, 14:58   #1
marenko.lilia
Пользователь
 
Аватар для marenko.lilia
 
Регистрация: 25.12.2013
Сообщений: 91
По умолчанию параметры функций по умолчанию

Есть функция которая рисует прямоугольник. В ней прописаны параметры по умолчанию - количество символов в ширину и высоту, и сам символ.
Вот код.

Код:
#include <iostream>
using namespace std;

void draw(int count1 = 5, int count2 = 5, char symbol = '*')
{
	for (int i = 0; i < count1; i++)
	{
		for (int j = 0; j < count2; j++)
		{
			cout << symbol;
		}
		cout << endl;
	}
	cout << endl << endl;
}

int main()
{	
	draw(5, 5, '=');

	return 0;
}
Вопрос такой: Если надо изменить только символ, то надо в функцию все равно передавать два целых числа, а потом символ? Или есть другой способ вызова?

если вызвать так
Код:
draw('=');
то оно меня не понимает

Последний раз редактировалось marenko.lilia; 03.09.2014 в 20:27. Причина: исправление ошибки в названии функции
marenko.lilia вне форума Ответить с цитированием
Старый 03.09.2014, 15:46   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

Да, надо указать два целых числа и потом символ.
Либо сделать две функции:
Код:
void draw(int count1, int count2, char ch='*')
{
...
}
void draw(char ch='*') 
{
  draw (5, 2, ch); 
}
и вызывать вот так:
Код:
    draw();
    draw('!');
    draw(10, 20);
    draw(10, 20, '?');
waleri вне форума Ответить с цитированием
Старый 03.09.2014, 16:16   #3
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,603
По умолчанию

Предшествующие аргументы надо указывать. То есть, нельзя передать последующие без указания предыдущих аргументов.
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 03.09.2014, 17:13   #4
marenko.lilia
Пользователь
 
Аватар для marenko.lilia
 
Регистрация: 25.12.2013
Сообщений: 91
По умолчанию

Спасибо, что подсказали!

Свежая статья на сайте для начинающих программистов: Параметры (аргументы) функции по умолчанию

Последний раз редактировалось Stilet; 04.09.2014 в 21:40.
marenko.lilia вне форума Ответить с цитированием
Старый 04.09.2014, 11:36   #5
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,603
По умолчанию

Цитата:
Сообщение от marenko.lilia Посмотреть сообщение
Свежая статья на сайте для начинающих программистов: Параметры (аргументы) функции по умолчанию
Круто Целый сайт.
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 04.09.2014, 11:55   #6
marenko.lilia
Пользователь
 
Аватар для marenko.lilia
 
Регистрация: 25.12.2013
Сообщений: 91
По умолчанию

нет - не целый сайт, а только одна из статей на сайте
marenko.lilia вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
(Язык "Си") Синтаксис функций- параметры. Vimork Помощь студентам 0 09.01.2014 16:54
[C++] параметры по умолчанию Kukurudza Общие вопросы C/C++ 2 21.05.2012 12:59
параметры по умолчанию Dimarik PHP 2 20.07.2010 01:24
Параметры по умолчанию для нового документа Diego__ Microsoft Office Word 2 19.02.2010 20:45
Параметры процедур и функций shurik_7866 Общие вопросы Delphi 8 10.12.2007 19:49