PrintArray.h — различия между версиями

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск
м (переименовал «PrintArray.cpp» в «TemplatePrintArray.cpp»)
(серьёзная переработка, указатели заменены на [])
 
(не показана 1 промежуточная версия этого же участника)
Строка 1: Строка 1:
<source lang="cpp">template<typename T>
+
<source lang="cpp">#ifndef PRINT_ARRAY_H
void printArray(T const * arr, int len) {
+
#define PRINT_ARRAY_H
     T const * p = arr;
+
 
    while(p != arr + len)
+
#include <iostream>
         std::cout << *p++ << " ";
+
 
    std::cout << std::endl;
+
// замечание: шаблоны функций всегда размещаются в заголовочных файлах
}</source>
+
//            в отличие от обычных функций
 +
 
 +
// шаблон функции печати массива
 +
template<typename T>
 +
void print_array(T const * arr, int size, char delim = ' ') {
 +
     for(int i = 0; i < size; ++i)
 +
         std::cout << arr[i] << delim;
 +
}
 +
 
 +
/* #ifndef PRINT_ARRAY_H: */
 +
#endif</source>
  
 
[[Категория:C++]]
 
[[Категория:C++]]

Текущая версия на 10:57, 25 сентября 2014

#ifndef PRINT_ARRAY_H
#define PRINT_ARRAY_H

#include <iostream>

// замечание: шаблоны функций всегда размещаются в заголовочных файлах
//            в отличие от обычных функций

// шаблон функции печати массива
template<typename T>
void print_array(T const * arr, int size, char delim = ' ') {
    for(int i = 0; i < size; ++i)
        std::cout << arr[i] << delim;
}

/* #ifndef PRINT_ARRAY_H: */
#endif