C Zeiger vs direktes Mitglied Zugang für structs

Sagen, dass ich eine Struktur wie die folgende ...

typedef struct {
  int WheelCount;
  double MaxSpeed;
} Vehicle;

... und ich habe eine Globale variable dieses Typs (ich bin mir wohl bewusst der Gefahren von globals, das ist für ein embedded system, das ich nicht design, und für die Sie eine unglückliche, aber notwendige übel.) Ist es schneller, um den Zugang der Mitglieder des struct direkt oder über einen pointer ? ie

double LocalSpeed = MyGlobal.MaxSpeed;

oder

double LocalSpeed = pMyGlobal->MaxSpeed;

Einer meiner Aufgaben ist es, zu vereinfachen und zu beheben einen vor kurzem geerbt embedded-system.

  • Was macht ein pointer Ihnen mit, dass der direkte Zugriff nicht? Und ein Zeiger langsamer.
  • -1 für Fragen Mikro-Optimierung ohne benchmarking es zuerst.
Schreibe einen Kommentar