Отправляет email-рассылки с помощью сервиса Sendsay

Уроки по C/C++

  Все выпуски  

Уроки по C/C++


Информационный Канал Subscribe.Ru


C/C++. Уроки с сайта http://progs.biz

Рассылка №18

C/C++. Урок 23. Пример шаблона функции.

Полные версии уроков (с картинками) можно найти по адресам:
Урок 23. Пример шаблона функции.

Дж. Шеферд. Программирование на Microsoft Visual C++ .NET.
Дж. Шеферд. Программирование на Microsoft Visual C++ .NET
Заказать на Озоне
Рассылки сайта progs.biz через subscribe.ru
Сайтостроение (уроки по HTML, PHP, MySQL, веб-дизайну)
Уроки по созданию сайта - HTML, PHP, JavaScript, PhotoShop, работа с базами данных, скрипты, SSI, Flash, использование HTML-редакторов (Dreamweaver, Homesite). Каждый урок рассчитан на 10-15 минут. Каждая серия уроков независима от других.

C/C++. Урок 23. Пример шаблона функции

Вот еще конкретный пример на шаблон функции. Этот шаблон ищет в массиве определенный элемент и если такой элемент есть, то шаблон функции возвращает номер этого элемента, а если такой элемент не найден, то возвращается -1.

#include <iostream.h>
//Объявление шаблона функции.
template <class T>
int find(T *arr, T a, int n)
{
    for(int i=0; i<n; i++)
    {
        if(arr[i]==a)
        {
            return i;
        }
    }
    return -1;
}
void main()
{
    //Использование шаблона функции для целых.
    int z[4] = {5, 7, -2, 66};
    int res;
    res = find(z, 66, 4);
    cout<<res<<"\n"; //Выведется 3.
    //Использование шаблона функции для булевских.
    bool b[3] = {true, true, true};
    res = find(b, false, 3);
    cout<<res<<"\n"; //Выведется -1.
}

У нашего шаблона 3 параметра: первый - это массив, в котором мы ищем наш элемент (помните, что имя массива - это указатель на нулевой элемент массива, поэтому мы и пишем T *arr), второй параметр шаблона - это искомый элемент, и третий - количество элементов в массиве.

Наверх

PARKING.RU. Качественный ВИРТУАЛЬНЫЙ ХОСТИНГ на платформе Windows(r): поддержка .NET, многофункциональная панель управления, аренда бизнес-приложений, сертифицированные специалисты. Управляемый ВЫДЕЛЕННЫЙ ХОСТИНГ на платформе Windows(r): производительные серверы, профессиональная поддержка, аренда ПО Microsoft(r), безопасность, гарантии. http://www.parking.ru
Copyright Алексеев Игорь, 2002-2003
Copyright сайт progs.biz, 2002-2003
Распространение материалов без разрешения владельцев авторских прав запрещено.


BannerDrive.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное