您的位置:首页 > 编程语言 > C语言/C++

C/C++面试题集锦

2016-07-08 17:21 381 查看
如下代码:
#include <stdio.h>

int g_int = 1;

class A
{
public:
int getInt0(void) { return g_int; }
int getInt1(void) { return m_int; }
virtual int getInt2(void) { return g_int; }

private:
int m_int;

};

int main(void)
{
A *pA = NULL;

int ret = pA->getInt0();
return ret;
}
通过测试发现调用getInt0并不会异常,getInt1和getInt2都会异常。注意测试需要在Debug版本下进行,因为release版本很可能优化。最近的一些面试发现自己对于C++还有很多不懂的呀,需要充电了,多看书。其它这道题和C++类内存布局有关。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++ 类内存布局