So please correct me if I am wrong: This means that this specific line of code is only executed once during runtime, and the next time that function is called, PlayerPawnBPClass will have the same value that was assigned to it the last time this function was called. Basically reducing the number of times that the initialisation is being executed to one, hence saving some processing time. Correct?
Mostly that is correct. It will keep whatever it’s value is across function calls, so if you assign to it after initialization that will be the value it has the next time the function is called (not sure if that’s what you were getting at with the wording of “last time this function was called” or not).
Personally, for something like that I would almost always declare it as const also.