趋势科技的笔试
1、#include <stdio.h>
class A{
public:
A(){func(0);};
virtual void func(int data){printf("A1:%d",data);}
virtual void func(int data) const{printf("A2:%d",data);}
void func(char *str){printf("A3:(%s)",str);}
};
class B:public A{
public:
void func(){printf("B1:%s","");}
void func(int data){printf("B2:%d",data);}
void func(char *str){printf("B3:(%s)",str);}
};
int main()
{
A *pA;
B b;
const A *pcA;
pA=&b;
pA->func(1);
pA->func("test");
A()(1);
pcA=&b;
pcA->func(2);
return 0;
}
程序运行的结果:
A1:0
B2:1
A3:(test)
A1:0
A1:1
A2:2
1)
基类的指针指向派生类对象:那么该指针只能够调用基类所定义的函数,但是如果该函数为虚函数,则调用该派生类自己的成员函数。(B2:1)
2)
如果以派生类的指针指向基类对象,则必须事先做明显的转型操作,但是这种做法很危险。
2、
include <iostream.h>template <typename T>
void func(const int &t)
{
cout<<t+100<<endl;
}
template<typename T>
void func(const T&t)
{
cout<<t<<endl;
}
int main()
{
func(10.3);
func(1000);
return 0;
}
程序运行结果:
10.3
1000
如果上述函数改为
include <iostream.h>void func(const int &t)
{
cout<<t+100<<endl;
}
template<typename T>
void func(const T&t)
{
cout<<t<<endl;
}
int main()
{
func(10.3);
func(1000);
return 0;
}
则程序的运行结果为:
10.3
1100
如果使用函数的非模板形式,不能在前面加上template关键字。
3、
改错:
include <iostream.h>class klass
{
public:
klass(){}
private:
~klass(){}
void func(int n){
cout<<"klass!!"<<endl;
} public:
void test(){
func(100);
}
};
int main()
{
klass k;
();
return 0;
}
运行后程序显示:error C2248: 'klass::~klass': cannot access private member declared in class 'klass'
证明析构函数的属性必须为public。
但是,如果把klass k改为klass* pk; pk=new klass; pk->test();程序通过,但是klass不能释放
-
马士基笔经(07.10.23上海财大bbs)
马士基笔经(07.10.23上海财大bbs)zz今天下午参加了马士基笔试,ms我们学校去笔的人不是很多。。。一开始要填一张信息表的(没有影响)第二部分开始做logic的题,量很多,是个人都做不完!但是题目还是很简单的,大家应该都会做。举个例子:1:55:?在问号处填个数。此类问题重复很多...
-
深圳航空笔试题
深圳航空的笔试题真多,三道题,法律类要翻译一个协议,再指出中方的法律风险;用英文回答一道问题,关于董事会的职能权责的;英翻中,MS从哪个外国网站上弄下来的。截至的时间是4月6号中午。我们耍了点滑头,宿舍三个人都接到笔试,因此分工一人做一道,我负责第一道。之前一直在...
-
神州数码笔经
刚刚神州数码笔试回来关于这次笔试我可是所谓困难重重啊,差点弃了,但不管怎样,总算考完了,现在谈一下最近决定还是不考研了,准备找工作.关于暑期的实习生招聘,投了豪夺简历,神州数码是第一个给我回的,也就意味着这是我的第一次笔试,所以我特别重视,网上查了好...
-
中国银行(BOC)的笔试题目
第一篇:居然回来搜了下找到原题,不过没答案。HowmanypeopleintheworldspeakEnglishasafirstanativelanguage?Exactinformationonthispointisnotavailable,butanestimateof230millioncannotbeverywideofthemark.Ofthese,145millionlivetheUnitedStates,alittleles...