La riga di cui sopra è presa da Unreal 4, e so che potrei chiederlo nei forum irreali, ma penso che questa sia una domanda generale C++ che merita di essere posta qui.Cosa fa ## (double hash) in una direttiva preprocessore?
Capisco che la prima riga definisca una macro, tuttavia non sono esperto in shenanigans del preprocessore in C++ e quindi sono perso laggiù. La logica mi dice che il backslash significa che la dichiarazione continua sulla riga successiva.
FThreadSafeStaticStat sembra un po 'come un modello, ma non c'è #' s sta succedendo in là e una sintassi non ho mai visto prima in C++
Qualcuno potrebbe dirmi cosa significa questo? Capisco che potresti non avere accesso a Unreal 4, ma è solo la sintassi che non capisco.
È possibile leggere su ## operator [su cppreference] (http://en.cppreference.com/w/cpp/preprocessor/replace#.23_and_.23.23_operators), tra le altre cose – Cubbi
'##' is/potrebbe essere chiamato l'operatore di concatenazione. – dyp
Oh, è fantastico! Spiega piuttosto molto, grazie. Ma perché viene utilizzata la parola chiave struct? La linea assomiglia più ad una definizione di variabile – Constan7ine