VC(C++)基础技术面试试题
从优快云 c++课堂转载
<!--[if !supportLists]-->一、 <!--[endif]-->写一个最简单的C/C++程序;
<!--[if !supportLists]-->二、 <!--[endif]-->不使用底层函数,用标准C/C++语句实现一个字符串复制函数;
int StrCopy(const char * pIn, char * pOut);
<!--[if !supportLists]-->三、 <!--[endif]-->写出一个字符串类CMyString定义(不必实现);
<!--[if !supportLists]-->四、 <!--[endif]-->把下面C风格代码,改用C++风格编写;
int firstNumber, secondNumber;
…
double result = ((double)firstNumber)/secondNumber;
<!--[if !supportLists]-->五、 <!--[endif]-->下面哪个函数的设计有问题?为什么?
A:
std::string getString(void)
{
return “abc”;
}
B:
const std::string getString(void)
{
return “abc”;
}
C:
const std::string & getString(void)
{
return “abc”;
}
<!--[if !supportLists]-->六、 <!--[endif]-->下面哪些代码不能编译通过?为什么?需要如何修改?
Class ClassA
{
public:
ClassA(void);
void doSomething(void);
private:
~ClassA(void);
}
void doSomething(const ClassA & pClassA)
{
..
pClassA.doSomething();
…
}
int main(void)
{
ClassA * pClassA = new ClassA()
doSomething(*pClassA);
delete pClassA;
}
<!--[if !supportLists]-->七、 <!--[endif]-->请描述指针与引用不同用法;
<!--[if !supportLists]-->八、 <!--[endif]-->请说出几个常用的STL库类,并简单描述用法;
<!--[if !supportLists]-->九、 <!--[endif]-->std:array、std:list、std:map等容器,是否有帮忙管理内存?为什么?
<!--[if !supportLists]-->十、 <!--[endif]-->请说出你对宽字节和多字节的理解;
<!--[if !supportLists]-->十一、 <!--[endif]-->标准MFC程序有哪几种应用类似程序?简单描述各自的类框架结构,以及程序执行次序;
<!--[if !supportLists]-->十二、 <!--[endif]-->请说出几个你常用的MFC类,并简单描述有哪些特性?
<!--[if !supportLists]-->十三、 <!--[endif]-->所有MFC类都继承于哪个类?该类主要用于实现哪些功能?
<!--[if !supportLists]-->十四、 <!--[endif]-->MFC窗体基类是哪个类?写出显示窗体、隐藏窗体、窗口有效,设置焦点等函数名称;
<!--[if !supportLists]-->十五、 <!--[endif]-->如何实现MFC窗体定时器功能?
<!--[if !supportLists]-->十六、 <!--[endif]-->#include有几种用法,有什么不同?
<!--[if !supportLists]-->十七、 <!--[endif]-->请说出你所知道的C/C++开源库名称,并描述功能;