首页 > 试题广场 >

定义如下两个结构体:struct Perfect {cons

[单选题]
定义如下两个结构体:
struct Perfect {
const static int crazy_bird = 2017;
void Print() { printf("crazy_bird= %d\n", crazy_bird); }
};
struct World {
Perfect perfect;
virtual void Print() { printf("crazy_bird= %d\n", perfect.crazy_bird); }
};
令Perfect* p= NULL,World* w= NULL,则p->Print() 和 w->Print()输出分别为:
  • 2017,2017
  • 报错,报错
  • 报错,2017
  • 2017,报错
这样的试题很不合理,,,都声明了空指针,还非要引用成员变量。会容易把人带偏。
如果这么玩,那么把crazy_bird 变成非静态变量,答案就是B了。。
按照我们不用玩空指针的逻辑,建议是B
发表于 2025-08-20 08:58:02 回复(0)
插眼
发表于 2025-05-04 16:55:22 回复(0)