PChar('Würfelbecher - shaker.wav')
Konstanten sind für gewöhnlich dynamisch zur Kompilierzeit typisiert, sie können also jeden beliebigen Typen haben. Ein Stringliteral kann entweder ein
String
, ein
string [n]
bzw.
ShortString
, ein
PChar
, ein
array of Char
oder ein
array [low .. high] of Char
sein.
Außerdem kann es eine Variation dieser sein (
WideString
,
AnsiString
,
PAnsiChar
,
array of AnsiChar
,
array of WideChar
dynamisch & statisch oder
OpenString
).
Der Typ wird dann automatisch zur Kompilierzeit je nach Kontext der Verwendung zugewiesen. Das Casten von Konstanten kann verwendet werden, wenn du sicherstellen willst, dass eine bestimmte überladene Funktion aufgerufen wird. Ansonsten ergibt das aber wenig Sinn. Wenn die Funktion also einen PChar-Wert als Parameter erwartet, wird
'Was auch immer'
also auch immer zu PChar in diesem Fall ausgewertet.
Siehe hierzu:
Deklarierte Konstanten (Embarcadero DocWiki)