Anonymní profil robo – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil robo – Programujte.comAnonymní profil robo – Programujte.com

 

Příspěvky odeslané z IP adresy 178.253.170.–

robo
C / C++ › referencia
13. 8. 2014   #192970

#4 KIIV
Tak ten objekt je tam nato, aby niesol informáciu či mám pole usporiadať zostupne alebo vzostupne.
Takto je to riešené aj v jednej knihe
 


#5 vitamin
Tak ale keď tam nedám tú referenciu, tak všetko funguje ako má. Aj v móde normal aj reversePřipojen obrázek.

Keď tam nedám referenciu, všetko mi funguje ako má.

robo
C / C++ › referencia
13. 8. 2014   #192963

Problém musí byť dakde v maine jak tak skúmam

 

Robo::Comparing reverse(Robo::Comparing::reverse);
int pole[LENGTH];
Robo::bubbleSort(pole, LENGTH);
Robo::selectionSort(pole, LENGTH, reverse);
robo
C / C++ › referencia
13. 8. 2014   #192960

Mám nasledujúci kód

namespace Robo{
	class Comparing{
	public:
		enum cmp {normal, reverse};
		cmp mode;
		Comparing(cmp m = normal) : mode(m) {}
		bool operator==(const Comparing & c) {return mode == c.mode;}
	};

	template <typename T>
	void swap(T & a, T & b);

	template <typename T>
	void bubbleSort(T field, int n, Comparing mode = Comparing::normal);

	template <typename T>
	void shakerSort(T field, int n, Comparing mode = Comparing::normal);
	
	template <typename T>
	void selectionSort(T field, int n, Comparing mode = Comparing::normal);
}

Problém nastane, keď chcem do funkcie predať referenciu triedy a nie kópiu.
 

void bubbleSort(T field, int n, Comparing & mode = Comparing::normal);

Vypíše mi nasledovnú chybu:
error C2440: 'default argument' : cannot convert from 'Robo::Comparing::cmp' to 'Robo::Comparing &'  

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032021 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý