per molte attività rapide in cui è possibile utilizzare una funzione f(x,y)
, in C normale vengono utilizzate macro. Vorrei chiedere specificamente su questi casi, che sono risolvibili con una chiamata di funzione (cioè le macro utilizzate per le funzioni di inlining, non per l'espansione del codice di codice arbitrario).
In genere le funzioni C non sono in linea poiché potrebbero essere collegate da altri file C. Tuttavia, le funzioni C statiche sono visibili solo all'interno del file C in cui sono definite. Pertanto possono essere evidenziate dai compilatori. Ho sentito dire che molte macro dovrebbero essere sostituite trasformandole in funzioni statiche, perché questo produce codice più sicuro.
Ci sono casi in cui questa non è una buona idea?
Anche in questo caso: non chiedere informazioni sulle macro di Code-Production con costrutti ## simili che non possono essere espressi come una funzione.