C++刷题(2)

本文介绍了C++中重写、重载和静态成员的概念及区别,通过例题讲解了函数参数传递、面向对象特性、运算符优先级等相关知识,并提供了若干编程题目供读者练习。
摘要由CSDN通过智能技术生成

1、下列选项中,不能用作标识符的是(   )。

A、_1234_

B、_1_2

C、int_2_

D、2_int_

D

第一个必须为字母或下划线

2、有以下程序,程序运行后的输出结果是?

#include < stdio. h > 
int main ( )
{ 
    int a [ 3 ] [ 4 ] = { 1,3,5,7,9,11,13,15,17,19,21,23 } , (*p) [4] = a , i , j , k = 0 ;
    for ( i =0 ; i < 3 ; i + + )
    for ( j =0 ; j < 2 ; j + + ) 
        k = k + * ( * ( p+i )+j );
    printf ( "%d" , k );
}

A、40

B、60

C、80

D、100

B

*(p+i) 相当于p[i],p[i]存储的是二维数组a的i行的数据地址。即 p[i]=&a[i][0];

*(p+i)+j 存储的是 a[i][j]的地址。*(*(p+i)+j)即是 a[i][j]的值

3、以下关于面向对象的描述错误的是:

A、面向对象的基本特性是封装,继承和多态

B、构造函数不可以是虚函数,析构函数可以是虚函数

C、子类重新定义父类虚函数的方法叫做重载

D、多态是为了接口重用,封装和继承是为了代码重用

C

子类重新定义父类虚函数的方法叫做继承,不是重载!

一、基本概念

对于C++中经常出现的函数名称相同但是参数列表或者返回值不同的函数,主要存在三种情况:

1.函数重写(override)

函数重载主要实现了父类与子类之间的多态性,子类中定义与父类中名称和参数以及返回值都相同的虚函数。

1)重写的函数不能是static函数,必须是virtual函数,即函数在原始的基类中被声明为虚函数;

2)重写函数与基类函数分在两个类的声明和定义中,这也就导致二者的作用域不同;

3)重写函数的名称、参数列表以及返回值(即函数原型)都要与基类的函数相同;

4)重写函数的访问修饰符可以不同,尽管virtual函数是pri

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值