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

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

Войти
Регистрация
Восстановить пароль
 
Dynamicmove
Сообщений: n/a
#1

Написать перегруженные функции для вывода на экран элементов массивов статического и динамического - C++

20.01.2014, 01:27. Просмотров 445. Ответов 4
Метки нет (Все метки)

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

Задача:
Заданы элементы массива. Написать перегруженные функции для вывода на экран элементов массивов статического и динамического.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.01.2014, 01:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать перегруженные функции для вывода на экран элементов массивов статического и динамического (C++):

Написать перегруженные функции для вывода на экран суммы элементов одномерного и двумерного массивов - C++
Доброе время суток! Прошу помощи в реализации следующей программы... Задача: Заданы элементы массива. Написать перегруженные...

Написать шаблонные, перегруженные функции для ввода и вывода на экран массивов и матриц - C++
Добрый вечер всем! Помогите написать написать шаблонные, перегруженные функции input и output для ввода и вывода на экран массивов и...

Написать перегруженные функции: Количество отрицательных элементов в массиве - C++
Написать перегруженные функции: Количество отрицательных элементов в массиве. Написать демонстрационную программу для вызова этих функций....

Написать программу для вывода на экран таблицы значений функции F (x) и ее разложения в ряд S (x) - C++
Помогите разобраться Написать программу для вывода на экран таблицы значений функции F (x) и ее разложения в ряд S (x) согласно своему...

Написать перегруженные функции для нахождения произведения - C++
Написать перегруженые функции для нахождения произведения трех переданных чисел (для чисел типа int, long, double) Буду очень...

Написать перегруженные функции для вычисления суммы двух чисел - C++
Используя перегрузки, написать функцию для выполнения вычисления суммы двух чисел, в зависимости от варианта, для следующих типов float,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
kventin_zhuk
БНТУ ФИТР
215 / 155 / 15
Регистрация: 26.12.2012
Сообщений: 382
20.01.2014, 01:58 #2
Dynamicmove,
Перегруженные функции - функции имеющие одинаковое имя, но разные сигнатуры(количество, порядок или типы формальных параметров). например

C++
1
2
3
4
5
6
7
8
9
10
11
void print(int *arr, int size)
{
   for (int i = 0; i < size; i++)
         cout << arr[i] << endl;
}
 
void print(int *arr)
{
   for (int i = 0; i < 10; i++)
         cout << arr[i] << endl;
}
при вызове:

C++
1
print(myArr, 10);
будет вызвана одна функция. при

C++
1
print(myArr);
другая
1
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,929
20.01.2014, 02:08 #3
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
#include <iostream>
 
void print(const int arr[], const int size)
{
    std::cout << "Type1: ";
    for (int i=0; i < size; i++)
        std::cout << arr[i] << " ";
    std::cout << std::endl;
}
 
void print(int *arr, const int size)
{
    std::cout << "Type2: ";
    for (int i=0; i < size; i++)
        std::cout << arr[i] << " ";
    std::cout << std::endl;
}
 
int main()
{
    const int arr1[] = {1, 2, 3, 4, 5};
    const int size = sizeof(arr1) / sizeof(*arr1);
    print(arr1, size);
 
    int *arr2 = new int[size];
    for (int i=0; i < size; i++)
        arr2[i] = i+1;
    print(arr2, size);
    delete[] arr2;
}
kventin_zhuk, заменять размер на magic number - не есть хорошо. Более того, что будет, если я передам массив размерностью 1?
1
kventin_zhuk
БНТУ ФИТР
215 / 155 / 15
Регистрация: 26.12.2012
Сообщений: 382
20.01.2014, 02:09 #4
MrGluck, вы правы Cпасибо, учту
1
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,929
20.01.2014, 02:17 #5
Кстати, вот третий способ на шаблонах:
C++
1
2
3
4
5
6
7
template<size_t N>
void print(const int (&a)[N])
{
    std::cout << "Type3: ";
    for (const int *it = a; it != a + N; ++it)
        std::cout << *it << " ";
}
Работает только со статическими массивами.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.01.2014, 02:17
Привет! Вот еще темы с ответами:

Написать перегруженные функции для вычисления суммы двух чисел - C++
Используя перегрузки, написать функцию для выполнения вычисления суммы двух чисел, в зависимости от варианта, для следующих типов float,...

Написать перегруженные функции для массива целых чисел и строки - C++
Написать перегруженные функции и основную программу, которая их вызывает. а) для массива целых чисел находит среднее арифметическое; ...

Функция вывода на экран всех общих элементов двух одномерных массивов - C++
Доброй ночи. Пожалуйста помогите:cry: Начали новую тему, но не могу понять, какой нужно написать алгоритм. Задача: Функция...

Написать перегруженные функции с двумя и тремя параметрами для вычисления суммы, разницы, произведения, доли - C++
Написать перегруженные функции с двумя и тремя параметрами, для вычисления суммы, разницы, произведения, доли. Добавлено через 1 час...


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

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

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