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

Шаблонный класс для работы с разными типами данных и объявление методов в main - C++

Восстановить пароль Регистрация
 
 
sodaily
0 / 0 / 0
Регистрация: 02.11.2014
Сообщений: 121
07.06.2016, 01:05     Шаблонный класс для работы с разными типами данных и объявление методов в main #1
есть класс шаблонный, но не могу объявить методы в main и сделать длядругих типов когда делала через шаблонные функции, то программа работает только с int,как сделать для других не понимаю читала про шаблоны, только как это реализовать не хватает знаний
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include "conio.h" 
#include "stdafx.h"
#include "conio.h" 
 
#include <iostream>
#include <iostream>
 using namespace std;
template <typename T>
class M
{ public
template <typename T>
void Sort( T* A, int n )//сортировка по возрастанию пузырек
{
    for( int k( 1 ); k <= n; k++ )
    {
        for( int i = 0; i < n - k; i++ )
        {
            if( A[ i ] > A[ i + 1 ] )
                swap( A[ i ], A[ i + 1 ] );//Функция swap меняет местами значения текущего эл и соседнего
        }
    }
}
 
template <typename T>
void Obr( T *A, int n )
 
{
    for( int j = 0; j < n; j++ )
    {
        for( int i = 0; i < n - 1; i++ )
        {
            if( A[ i ] > A[ i + 1 ] )
                swap( A[ i ], A[ i + 1 ] ); //Функция swap меняет местами значения
        }
    }
}
};
 
int main()
{
    setlocale( LC_ALL, "Russian" );
    int *A;
    int n;
    cout << "Введите размерность массива: ";
    cin >> n;
    A = new int[ n ];
    for( int i( 0 ); i < n; i++ )
    {
        cout << "Введите " << i + 1 << " - элемент: ";
        cin >> A[ i ];
    }
    
    ASort( A, n );
    cout << "Отсортированный массив: ";
    for( int i( 0 ); i < n; i++ )
    {
        cout << A[ i ] << " ";
    }
    Obr( A, n );
    cout << "обратный порядок: ";
    for( int j = n - 1; j >= 0; j-- )
        cout << A[ j ] << " "; // Выводим массив в обратном порядке ( с 9 до 0 включительно ) 
    _getch();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.06.2016, 01:05     Шаблонный класс для работы с разными типами данных и объявление методов в main
Посмотрите здесь:

C++ Переписать программу с разными типами данных
Сделать статический массив с разными типами данных C++
C++ Написать шаблонный класс List для работы с одноправленными списками в динамической памяти
C++ Предусмотреть использование шаблонного класса для работы с различными типами данных
Реализация Fifo с разными типами данных C++
C++ Двухмерный массив с разными типами данных
Матрица с разными типами данных в ней C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.06.2016, 23:50     Шаблонный класс для работы с разными типами данных и объявление методов в main
Еще ссылки по теме:

C++ Шаблонный класс для обработки массива
Оценить время выполнения и сложность простейших операций с разными типами данных C++
Список с разными типами данных, унаследованным от одного C++
C++ Шаблонный метод с разными параметрами
Как перегрузить оператор "+" для шаблонного класса, инстанцированного разными типами? C++

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

Или воспользуйтесь поиском по форуму:
tapochka
34 / 34 / 8
Регистрация: 25.04.2014
Сообщений: 449
07.06.2016, 23:50     Шаблонный класс для работы с разными типами данных и объявление методов в main #21
sodaily, http://cppstudio.com/post/5165/
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Yandex
Объявления
07.06.2016, 23:50     Шаблонный класс для работы с разными типами данных и объявление методов в main
Ответ Создать тему
Опции темы

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