Wie lös ich die aufgabe?
-
vitacola: Ich nehme an, dass es auch so gemeint war. Und der templatisierte Ansatz ist hier ziemlicher overkill. Wenns dich interessiert, das sähe etwa so aus:
template<typename> struct typ_nummer { static int const val = 0; } template<> int const typ_nummer<int>::val = 1; template<> int const typ_nummer<double>::val = 2; template<> int const typ_nummer<std::string>::val = 3; template<typename t> int welcherTyp(t const &) { return typ_nummer<t>::val; }
-
hmm....dazu muss ich mich wohl erstmal bis zum thema der templates vorarbeiten was?
-
VitaCola schrieb:
so habs mal so gemacht:
#pragma argsused int welcherTyp(int x) { return 1; } int welcherTyp(double x) { return 2; } int welcherTyp(string& str) { return 3; }
Lass das '#pragma argsused' weg. #pragma's sind compiler-spezifisch und daher nicht immer funktionell. Wenn du einen Parameter nicht brauchst, dann lass den Namen weg, um Warnungen zu unterbinden, zB
int welcherTyp(int) { return 1; }
-
Wer sagt, dass man das nicht über temlplates und rtti machen soll?
Aber mal echt jetzt, hier sind überladungen ja wohl das einzig sinnvlolle...
-
newkid_ schrieb:
3. Für freaks mit exections. den im parameter übergebenen wert schmeisst ne exeption
und du checks mit 3 catches.catch ( int x )
return 0 oder cout <<
catch ( long l )Bloß nicht! exception heißt Ausnahme!
-
???
explodiert der computer?
du fängst ja die ausnahmen ab und kontrollierst so den programmablauf, also wo liegt die explosion?ausserdem sagte ich ja "für freakz"
-
lol wenn ich auch mal was sagen darf...keine ahnung obs stimmt, ABER
das
#pragma argsuseedhat sicher nich vita geschrieben, das steht nämlich beim borland immer drinne
-
newkid_ schrieb:
???
explodiert der computer?
du fängst ja die ausnahmen ab und kontrollierst so den programmablauf, also wo liegt die explosion?ausserdem sagte ich ja "für freakz"
Für Idioten vielleicht. Wieso zur Hölle willst du für den normalen vorgesehenen Programmfluß Exceptions benutzen?
-
Michael E. schrieb:
Für Idioten vielleicht. Wieso zur Hölle willst du für den normalen vorgesehenen Programmfluß Exceptions benutzen? Und warum quoted volkard so einen Mist?
ich fand die exception-lösung sehenswert und interessant.
ich finde es gut, wenn auch abwegige programmiertricks gezeigt werden. am besten natrlich unter dem vorbehalt, daß das nicht in produktionscode verwendung finden sollte. und es war ja ordentlich mit warnhinweis versehen.
-
Für mich hats sich eher so angehört, als ob "richtige Profis" das verwenden würden, die ordentlich was drauf haben.
-
"Richtige Profis" benutzen ja auch Exceptions
Eigentlich zwar nicht für sowas, aber obfuscated Code ruled eben!