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