Welche dieser Methoden ist sicherer für die Definition von Variablentypen? Ich weiß, dass wir alle die Stirn runzeln, wenn wir #defines sehen, aber es scheint genau so gut zu funktionieren wie typedef hier:Korrekte Art, Typ zu definieren (typedef vs #define)
Gibt es einen Vorteil auf die eine oder andere Weise, und wenn ja, was könnte es sein?
Methode eins:
#include <iostream>
#define byte unsigned char
int main() {
byte testByte = 'A';
std::cout << testByte << std::endl;
return 0;
}
Methode zwei:
#include <iostream>
int main() {
typedef unsigned char byte;
byte testByte = 'A';
std::cout << testByte << std::endl;
return 0;
}
Was bedeutet "sicherer"? –
Ihre Methode 1 ist eine schreckliche Übung. –
Wenn möglich, bevorzugen Sie die aktuellen Sprachfunktionen über Präprozessorfunktionen. Mit anderen Worten, vermeiden Sie Makros. – Logicrat