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

Определение функций сортировок в классе - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Классы и их наследование http://www.cyberforum.ru/cpp-beginners/thread833215.html
Начал изучать С++ и ООП после того как понял немного осоновы. И вот столкнулся с чем. Есть базовый класс, есть класс-наслденик, базовый класс вывел расчеты, а класс наследник - нет. Вот Код. #include <iostream> #include <math.h> using namespace std; class rgr { public:
C++ Найти дополнение к числу в дополнительном коде на с++ Найти дополнение к числу в дополнительном коде на с++. Я знаю что такое дополнение к 1 и 2 в двоичном коде. А как найти дополнение к произвольному числу? http://www.cyberforum.ru/cpp-beginners/thread833204.html
подскажите как заставить правильно работать программу по реализации класса "треугольник" на C++ C++
lb_1_oop_sam.h #ifndef lb_1_oop_sam_h #define lb_1_oop_sam_h //Структура "треугольник" class triangle { struct point {
C++ Анализ буфера клавиатуры нестандартным методом
Здравствуйте! Ребята, подскажите, не знаю откуда копать и куда. Есть задача: Разработать программу, которая анализируя буфер клавиатуры выводит нажатые клавиши и осуществляет перемещение курсора (без использования стандартных функций) на экране справа на лево начиная с нижнего правого угла.. Буду писать или на С++ или на С#. Но я ума не приложу как нестандартными методами? Ассемблер и С дружат?...
C++ наследование http://www.cyberforum.ru/cpp-beginners/thread833145.html
Еще раз добрый вечер всем. У меня такая проблема - есть класс многочлен от трех переменных x,y,z мне нужно реализовать наследника от него - многочлен от переменной х. Не могу сообразить с какого боку подойти. Как я понял - мне надо y и z оставить в private а х вынести в protected и все будет хорошо. У кого есть мысли по этому поводу - прошу поделиться. Выложу пока только *.h файлы, остальное сам...
C++ Чтение из памяти стороннего процесса и запись в файл массива типа doouble Здравствуйте. Помогите кто может) В общем надо написать прогу которая будет читать мой массив из Visual Studio 2010 во время отладки (то есть адрес его известен) и записывать его в текстовый файл. Если массив создается внутри самой этой проги, то его чтение из памяти во время отладки проблем не вызывает. Собственно основная проблема заключается в том, что нельзя просто через указатель читать... подробнее

Показать сообщение отдельно
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6172 / 2901 / 284
Регистрация: 04.12.2011
Сообщений: 7,722
Записей в блоге: 3
10.04.2013, 01:52     Определение функций сортировок в классе
Цитата Сообщение от Minor1310 Посмотреть сообщение
Есть класс содержащий к примеру 2 функции сортировки(выбором и пузырьком) в которые передается интовый массив. Из методов реализации сортировок найдены:
1) выбором
Вопрос такого плана как реализовать их внутри-классово без шаблонов?
Вот перегрузка шаблона на тип int (специализация):
C++
1
2
3
4
5
6
7
8
void selectSort<int>(int* arr, int size)  
{
    T tmp;
    for(int i = 0; i < size; ++i) // i - номер текущего шага
    { 
       //и тп.
    }
}
Вот перегрузка без шаблона:
C++
1
2
3
4
5
6
7
8
void selectSort(int* arr, int size) 
{
    T tmp;
    for(int i = 0; i < size; ++i) // i - номер текущего шага
    { 
       //и тп.
    }
}
Но... обычно в классе определяют операторы сравнения (главным образом < ) и передают в метод сортировки где эти операции используются. То есть стандартно это можно представить так например:
-определяем bool operator<()
-заполняем контейнер (vector) экземплярами класса
-вызываем sort(ier1, iter2) //подключить <algorithm>
то есть следуя этой логике сортировку вообще не стоит реализовывать в классе. А методов сравнения можно определить несколько:
bool comp1()
bool comp2()
....
bool compn()
тогда каждый раз когда нужно сортировать по определенному критерию и параметру вызывается перегруженная
sort( , , A::compk()) //функция сравнения передаётся
 
Текущее время: 03:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru