Type Name Prefix Convention

I’m curious about the type name prefix convention. Here’s what it looks like to me:
E - Enums
T - Templates
U - UObjectBase and subclasses (except for AActor and subclasses)
A - AActor and subclasses
F - ?

What the heck does F stand for?

1 Like

Ah, got it. Thanks. I figured it was nothing more than the “other” category. At first I thought it was for floats, but then I saw FIntVector.

There is also I, used for Interfaces.

Assuming all this is true, you could intemperate F to be “data structure”, that is, just a grouping of related objects/data/flags/references.

I think F is used for various things…
And then there’s G which seems to stand for Global.

it actually stands for Float, and it is legacy from previous versions when it was necessary to differentiate float from integer variables by using these prefixes

Mike Fricker (Lead Technical Director) explained the origins of “F” Prefix:

“The ‘F’ prefix actually stands for “Float” (as in Floating Point.)

“Tim Sweeney wrote the original “FVector” class along with many of the original math classes, and the ‘F’ prefix was useful to distinguish from math constructs that would support either integers or doubles, even before such classes were written. Much of the engine code dealt with floating-point values, so the pattern spread quickly to other new engine classes at the time, then eventually became standard everywhere.”

*“This was in the mid-nineties sometime. Even though most of Unreal Engine has been rewritten a few times over since then, some of the original math classes still resemble their Unreal 1 counterparts, and certain idioms remain part of Epic’s coding standard today.”
Source:

1 Like