小杨定义了一个结构体 Hero 来表示游戏角色,下面哪种初始化方式会由于语法错误导致编译失败?
struct Hero { string name; int hp; };
Hero h={"Arthur", 100};
Hero h; h.name="Arthur"; h.hp=100;
Hero h=new Hero{"Arthur", 100};
Hero *p=new Hero{"Arthur", 100};