首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试
MPA考试 | 中科院
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT
新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证
华为认证 | Java认证
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格
报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师
人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平
驾驶员 | 网络编辑
卫生资格 | 执业医师 | 执业药师 | 执业护士
会计从业资格考试会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师
注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师
质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师
设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师
城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏
您现在的位置: 考试吧(Exam8.com) > 计算机等级考试 > 计算机二级 > C加加 > 复习资料 > 正文

计算机等级考试二级:C++学习重点分析试题

来源:考试吧Exam8.com) 2010-4-15 16:22:00 考试吧:中国教育培训第一门户 模拟考场
计算机等级考试二级:C++学习重点分析试题

  十四、关于malloc/free 和new /delete

  · malloc/free 是C/C+的内存分配符,new /delete是C++的内存分配符。

  · 注意:malloc/free是库函数,new/delete是运算符。

  · malloc/free不能执行构造函数与析构函数,而new/delete可以。

  · new/delete不能在C上运行,所以malloc/free不能被淘汰。

  · 两者都必须要成对使用。

  · C++中可以使用_set_new_hander函数来定义内存分配异常的处理。

  十五、C++的特性

  C++新增加有重载(overload),内联(inline),Const,Virtual四种机制。

  重载和内联:即可用于全局函数,也可用于类的成员函数。

  Const和Virtual:只可用于类的成员函数。

  重载:在同一类中,函数名相同的函数。由不同的参数决定调用那个函数。函数可要不可要Virtual关键字。和全局函数同名的函数不叫重载。如果在类中调用同名的全局函数,必须用全局引用符号::引用。

  覆盖是指派生类函数覆盖基类函数。

  函数名相同;参数相同。

  基类函数必须有Virtual关键字。

  不同的范围(派生类和基类)。

  隐藏是指派生类屏蔽了基类的同名函数相同。

  1、 函数名相同,但参数不同,此时不论基类有无Virtual关键字,基类函数将被隐藏。

  2、 函数名相同,参数也相同,但基类无Virtual关键字(有就是覆盖),基类函数将被隐藏。

  内联:inline关键字必须与定义体放在一起,而不是单单放在声明中。

  Const:const是constant的缩写,“恒定不变”的意思。被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。

  1、 参数做输入用的指针型参数,加上const可防止被意外改动。

  2、 按值引用的用户类型做输入参数时,最好将按值传递的改为引用传递,并加上const关键字,目的是为了提高效率。数据类型为内部类型的就没必要做这件事情;如:

  将void Func(A a)改为void Func(const A &a)。

  而void func(int a)就没必要改成void func(const int &a)。

  3、给返回值为指针类型的函数加上const,会使函数返回值不能被修改,赋给的变量也只能是const型变量。如:函数const char*GetString(void); char *str=GetString()将会出错。而const char *str=GetString()将是正确的。

  4、 Const成员函数是指此函数体内只能调用Const成员变量,提高程序的键壮性。如声明函数 int GetCount(void) const;此函数体内就只能调用Const成员变量。

  Virtual:虚函数:派生类可以覆盖掉的函数,纯虚函数:只是个空函数,没有函数实现体。

  十六、extern“C”有什么作用?

  Extern “C”是由C++提供的一个连接交换指定符号,用于告诉C++这段代码是C函数。这是因为C++编译后库中函数名会变得很长,与C生成的不一致,造成C++不能直接调用C函数,加上extren “c”后,C++就能直接调用C函数了。

  Extern “C”主要使用正规DLL函数的引用和导出 和 在C++包含C函数或C头文件时使用。使用时在前面加上extern “c” 关键字即可。

  十七、构造函数与析构函数

  派生类的构造函数应在初始化表里调用基类的构造函数。

  派生类和基类的析构函数应加Virtual关键字。

  不要小看构造函数和析构函数,其实编起来还是不容易。

  #include

  class Base

  {

  public:

  virtual ~Base() { cout<< "~Base" << endl ; }

  };

  class Derived : public Base

  {

  public:

  virtual ~Derived() { cout<< "~Derived" << endl ; }

  };

  void main(void)

  {

  Base * pB = new Derived; // upcast

  delete pB;

  }

  输出结果为:

  ~Derived

  ~Base

  如果析构函数不为虚,那么输出结果为:

  ~Base

  十八、#IFNDEF/#DEFINE/#ENDIF有什么作用

  仿止该头文件被重复引用。

上一页  1 2 3 4  下一页
  相关推荐:2009年9月计算机等考二级ACCESS模拟试题汇总
       考试吧:2010年计算机等考二级C预测题汇总
       计算机等级考试二级JAVA考前密卷二套(1)
文章搜索
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。