面试题1:下面那个const应该被移除?
代码如下:
const bufsize = 100;
#include<windows.h>
#include<iostream>
#include BUF_SIZE 30
using namespace std;
class A
{
public:
A();
~A(){};
public:
intlie const[A] BYTE * GetBuffer() const[B]//这样的函数是常成员函数,只读函数,它既不能更改数据成员的值,也不能调用那些能引起数据成员值变化的成员函数,只能调用
//const成员函数
{reurn m_pBuf;}
private:
const[C] BYTE* const[D] m_pBuf;
};
A::A():m_pBuf()
{ BYTE* pBuf = new BYTE[BUF_SIZE
if(p_Buf ==NULL)
return;
for(int i = 0;i<BUF_SIZE;++i)
{ pBuf[i]= i}
m_pBuf=pBuf;
}
int main()
{
}
解析:关于const修饰指针的情况,一般分为如下4