Not exactly what you are looking for
Hold[(3 + #) &[x]] // FullForm
(* Hold[Function[Plus[3, Slot[1]]][x]] *)
Hold
, or any other construct that prevents evaluation is required, otherwise
(3 + #) &[x] // FullForm
(* Plus[3, x] *)
(x + 1) // g // FullForm
(* g[Plus[1, x]] *)
f @@ g[x] // FullForm
(* f[x] *)
Hold[f @@ g[x]] // FullForm
(* Hold[Apply[f, g[x]]] *)