可能重复:
何时在空实例上调用成员函数会导致未定义的行为?
我刚刚阅读了这个问题并给出了一个很好的答案:何时在空实例上调用成员函数会导致未定义的行为?
基本上,以下代码是未定义的行为吗?
struct foo { static void bar() { } };
foo *p = nullptr;
p->bar();
根据链接的帖子,这可以用不同的方式解释,一种是UB,另一种不是。
在 C++0x 中,从 n3126 开始,歧义仍然存在
这仍然适用于最终的 C++11 吗?
可能重复:
何时在空实例上调用成员函数会导致未定义的行为?
我刚刚阅读了这个问题并给出了一个很好的答案:何时在空实例上调用成员函数会导致未定义的行为?
基本上,以下代码是未定义的行为吗?
struct foo { static void bar() { } };
foo *p = nullptr;
p->bar();
根据链接的帖子,这可以用不同的方式解释,一种是UB,另一种不是。
在 C++0x 中,从 n3126 开始,歧义仍然存在
这仍然适用于最终的 C++11 吗?