问题 单项选择题

有如下类和对象的定义:
class Constants
public:
static double getPI() return 3.1416;
;
Constants constants;
下列各组语句中,能输出3.1416的是______。

A.cout<<constants->getPI();和cout<<Constants::getPI();
B.cout<<constants.getPI();和cout<<Constants.getPI();
C.cout<<constants->getPI();和cout<<Constants->getPI();
D.cout<<constants.getPI();和cout<<Constants::getPI();

答案

参考答案:D

解析: 本题考查静态成员函数。静态成员函数由于没有this指针,所以不能访问本类中的非静态成员。引用静态成员函数有2种方式,一种是直接使用类来引用,即Constants::getPI();另一种是使用对象来引用,即constants.getPI()。所以本题答案为D。

填空题
单项选择题 共用题干题