问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我要面试软件工程师vc++ 的笔试 试题.

发布网友 发布时间:2022-04-30 04:59

我来回答

4个回答

热心网友 时间:2023-10-14 18:55

我也想从事VC开发..现在还是大三学生

帮你找了些
1、虚函数的本质和实现机制
答:虚函数的本质是通过基类访问派生类定义的函数。虚函数只能借助于指针或者引用来达到多态效果。
2、C++中传递函数参数的方式及他们的优缺点?
答:C++语言中,函数的参数和返回值的传递方式有三种:值传递、指针传递和引用传递。
3、重载(overload)和重写(overried,有的书也叫做“覆盖”)的区别?
答:常考的题目。从定义上来说:
重载:是指允许存在多个同名函数,而这些函数的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同)。
重写:是指子类重新定义父类虚函数的方法。
从实现原理上来说:
重载:编译器根据函数不同的参数表,对同名函数的名称做修饰,然后这些同名函数就成了不同的函数(至少对于编译器来说是这样的)。如,有两个同名函数:function func(p:integer):integer;和function func(p:string):integer;。那么编译器做过修饰后的函数名称可能是这样的:int_func、str_func。对于这两个函数的调用,在编译器间就已经确定了,是静态的。也就是说,它们的地址在编译期就绑定了(早绑定),因此,重载和多态无关!
重写:和多态真正相关。当子类重新定义了父类的虚函数后,父类指针根据赋给它的不同的子类指针,动态的调用属于子类的该函数,这样的函数调用在编译期间是无法确定的(调用的子类的虚函数的地址无法给出)。因此,这样的函数地址是在运行期绑定的(晚绑定)。
4、引用和指针的区别?
答:引用和指针有如下三种区别:
1 引用必须在声明时初始化,而指针不用;
2 对于NULL不能引用,而指针可以指向NULL;
3 引用一旦声明,对象不能改变;而指针可以随时改变指向 的对象。
引用能做到的,指针也可以,但指针更危险;

一道面试题(VC++)
考官曾出过这样一道题,题目其实很简单,“有若干中国人、英国人和日本人排队,当他们出队时,用母语说出自己的名字。” 设计环境然后给出代码:
//代码
#include <iostream>
#include <string>

Class Person
{
public:
Person() {}

virtual void SayName() = 0;

protected:
Person(std::string& name) : _name(name) {}
std::string _name;
};

Class Chinese : public Person
{
public:
Chinese(std::string name) : Person(name) { }
void SayName() { count << "我叫" << _name.c_str() << endl; }
};

Class English : public Person
{
public:
English(std::string name) : Person(name) { }
void SayName() { count << "My name is " << _name.c_str() << endl; }
};

Class Japanese : public Person
{
public:
Japanese(std::string name) : Person(name) { }
void SayName() { count << "Wadasiwa " << _name.c_str() << " desi." endl; }
};

void main()
{
std::queue<Person*> q;
Chinese c("黎明");
English e("Mary");
Japanese j("Sankou Baihui");

q.push(&c);
q.push(&e);
q.push(&j);

std::queue::iterator p, end = q.end();
Person* pp;
for(p = q.begin(); p != end; ++p)
{
pp = *p;
pp->SayName();
}
}
面向对象实现的精髓就是多态。真正理解并掌握了多态,然后再看些设计模式等书籍,掌握职责分配原则,方可算掌握了面向对象。

还有些连接
VC面试题目
http://www.80diy.com/home/20060315/12/4615739.html
上海VC面试经历
http://bbs.139city.com/thread-7611-1-1.html

热心网友 时间:2023-10-14 18:55

呵呵,我也找了下,提供VC++试题(含答案)如下,希望能帮到你招聘到高手!

1、http://www.87717.com/vc/vc_992.html

2、http://www.programfan.com/club/post-211417.html

3、http://emilienic522.spaces.live.com/blog/cns!a64ad1009a4caa44!345.entry

热心网友 时间:2023-10-14 18:56

加油!!

热心网友 时间:2023-10-14 18:56

哎呀,我都转行了~

热心网友 时间:2023-10-14 18:55

我也想从事VC开发..现在还是大三学生

帮你找了些
1、虚函数的本质和实现机制
答:虚函数的本质是通过基类访问派生类定义的函数。虚函数只能借助于指针或者引用来达到多态效果。
2、C++中传递函数参数的方式及他们的优缺点?
答:C++语言中,函数的参数和返回值的传递方式有三种:值传递、指针传递和引用传递。
3、重载(overload)和重写(overried,有的书也叫做“覆盖”)的区别?
答:常考的题目。从定义上来说:
重载:是指允许存在多个同名函数,而这些函数的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同)。
重写:是指子类重新定义父类虚函数的方法。
从实现原理上来说:
重载:编译器根据函数不同的参数表,对同名函数的名称做修饰,然后这些同名函数就成了不同的函数(至少对于编译器来说是这样的)。如,有两个同名函数:function func(p:integer):integer;和function func(p:string):integer;。那么编译器做过修饰后的函数名称可能是这样的:int_func、str_func。对于这两个函数的调用,在编译器间就已经确定了,是静态的。也就是说,它们的地址在编译期就绑定了(早绑定),因此,重载和多态无关!
重写:和多态真正相关。当子类重新定义了父类的虚函数后,父类指针根据赋给它的不同的子类指针,动态的调用属于子类的该函数,这样的函数调用在编译期间是无法确定的(调用的子类的虚函数的地址无法给出)。因此,这样的函数地址是在运行期绑定的(晚绑定)。
4、引用和指针的区别?
答:引用和指针有如下三种区别:
1 引用必须在声明时初始化,而指针不用;
2 对于NULL不能引用,而指针可以指向NULL;
3 引用一旦声明,对象不能改变;而指针可以随时改变指向 的对象。
引用能做到的,指针也可以,但指针更危险;

一道面试题(VC++)
考官曾出过这样一道题,题目其实很简单,“有若干中国人、英国人和日本人排队,当他们出队时,用母语说出自己的名字。” 设计环境然后给出代码:
//代码
#include <iostream>
#include <string>

Class Person
{
public:
Person() {}

virtual void SayName() = 0;

protected:
Person(std::string& name) : _name(name) {}
std::string _name;
};

Class Chinese : public Person
{
public:
Chinese(std::string name) : Person(name) { }
void SayName() { count << "我叫" << _name.c_str() << endl; }
};

Class English : public Person
{
public:
English(std::string name) : Person(name) { }
void SayName() { count << "My name is " << _name.c_str() << endl; }
};

Class Japanese : public Person
{
public:
Japanese(std::string name) : Person(name) { }
void SayName() { count << "Wadasiwa " << _name.c_str() << " desi." endl; }
};

void main()
{
std::queue<Person*> q;
Chinese c("黎明");
English e("Mary");
Japanese j("Sankou Baihui");

q.push(&c);
q.push(&e);
q.push(&j);

std::queue::iterator p, end = q.end();
Person* pp;
for(p = q.begin(); p != end; ++p)
{
pp = *p;
pp->SayName();
}
}
面向对象实现的精髓就是多态。真正理解并掌握了多态,然后再看些设计模式等书籍,掌握职责分配原则,方可算掌握了面向对象。

还有些连接
VC面试题目
http://www.80diy.com/home/20060315/12/4615739.html
上海VC面试经历
http://bbs.139city.com/thread-7611-1-1.html

热心网友 时间:2023-10-14 18:55

呵呵,我也找了下,提供VC++试题(含答案)如下,希望能帮到你招聘到高手!

1、http://www.87717.com/vc/vc_992.html

2、http://www.programfan.com/club/post-211417.html

3、http://emilienic522.spaces.live.com/blog/cns!a64ad1009a4caa44!345.entry

热心网友 时间:2023-10-14 18:56

加油!!

热心网友 时间:2023-10-14 18:56

哎呀,我都转行了~
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...交易或事项中,属于投资活动产生的现金流量的有( )。A.为购建固定资... 关于喝茶养生的4大原则! 怎么喝茶对身体好? 喝茶养生要讲究什么,这些一定要知道以免伤身 报考专硕有哪些好处? 攻读硕士是什么意思? 菊花浇水能浇花吗 电脑桌面正常,打开桌面图标"我的电脑"背景是黑色. ...玩这桌面背景就出现了黑色的说此windows7不是正版. 为什么我的windows操作系统总是在开机的时候提醒我不是正版,并且桌面背 ... 关于好好学习的英文歌摇 遵义获得全国文明城市是什么时候? 关于高级软件工程师考试问题 获奖环保动画片espero的内容介绍? 下面是一家软件测试工程师的笔试题目,请大家帮忙做做。 软件工程师的应届生笔试题目收集 谁知道广州公交车上播放的这段公交视频? 谁有关于 创建南京文明城市 的动画 加好多分! 软件测试工程师笔试试题 java软件工程师上机测试题目都是什么题目 软件工程师考试的具体情况? 高级软件工程师考试内容和未来就业 适合高中生学习的英文歌 适合学习英语听的英文歌 有没有比较好听的英语歌,要有助于学习英语的 推荐些适合学习时听的 好听的英文歌! 求学习英语的英文歌 求音乐:关于学习的英文歌曲 适合学英语听的英文歌 有哪些适合学英语的歌曲? 有关创建文明城市的诗歌,童谣 商业养老保险股票有哪些 好习惯伴我行争做文明滨海人 主题征文 以宿州为基地安徽为中心辐射全国怎么概括 怎么切包菜丝 给宿州写一条广告语。 想知道宿州属于哪个省? 长沙的漫迷请进一下~ 青春大运,文明城市,和谐家园 作文 晋城的城市荣誉 迎动漫讲文明树新风演讲稿 为什么苯乙烯的价格每天都在变化,根据什么来变的? 苯乙烯价格同比上涨88.78%!会影响到哪些物品的价格? 苯乙烯出现暴涨是哪些因素引起的 mp3怎么删除歌曲手机vivo 天胶期货与石油价格之间的关联程度如何? 想做一个简单的软件,那位给推荐一下用什么语言好? 房产税纳税义务发生时间 房产税起征时间的确定 “苯乙烯”属于职业危害因素吗