C typedef const Argument

9
%Vor%

Ist

%Vor%

das Gleiche wie

%Vor%

für alle typedefs? Gibt es einen Unterschied zwischen den letzten beiden? Ich dachte

%Vor%     
dizcza 02.04.2017, 14:11
quelle

1 Antwort

4

Dieser Typdef

%Vor%

definiert einen Alias ​​für den Array-Typ float[3]

Diese Deklaration des Parameters

%Vor%

deklariert vptr als Array vom Typ const float[3] .

Funktionsparameter, die als Array-Typen angegeben sind, werden an Zeiger auf Objekte der Array-Elementtypen angepasst.

Also diese Erklärung

%Vor%

wird an den Typ const float *vptr angepasst. Das ist ein nicht konstanter Zeiger auf ein konstantes Objekt.

Diese Beziehung

  

vec3 const vptr & lt; == & gt; float * const vptr // ein konstanter Zeiger auf ein   Objekt

ist falsch. Und diese Aussage

%Vor%

bestätigt das.

Sie können diese Deklaration nicht erhalten

%Vor%

mit diesem Typedef

%Vor%     
Vlad from Moscow 02.04.2017, 14:25
quelle

Tags und Links