意味的には0個の要素をハードコーディングしてるだけで同じじゃん。
まぁ個人の気になるレベルの話に突っ込んでもしょうがないけど。

C の頃だが、リテラルのハードコードが気になるあまり

#define ZERO 0
#define PARAM01 "PARAM01"
…

とか、手段と目的取り違えた意味の無いコードが多かったな。