众所周知,C++中在声明结构体变量时可以省略struct关键字,而在结构体名称与变量名称相同时会产生歧义,此时则不能省略struct关键字。
然而,在结构体名称与函数名称相同时亦不可省略struct关键字,如在<sys/stat.h>中,存在名为stat的函数和名为struct stat的结构体,此时在C++中省略struct则会报错:
不省略struct则不会报错:
众所周知,C++中在声明结构体变量时可以省略struct关键字,而在结构体名称与变量名称相同时会产生歧义,此时则不能省略struct关键字。
然而,在结构体名称与函数名称相同时亦不可省略struct关键字,如在<sys/stat.h>中,存在名为stat的函数和名为struct stat的结构体,此时在C++中省略struct则会报错:
不省略struct则不会报错: