关于C++/JAVA类中的static成员和对象成员的说法正确的是:
来源:互联网 发布:托拜厄斯哈里斯数据 编辑:程序博客网 时间:2024/05/17 05:07
A:static成员变量在对象构造时候生成
B: static成员函数在对象成员函数中无法调用
C: 虚成员函数不可能是static成员函数
D: static成员函数不能访问static成员变量
答案:c 解释,(1)类的static成员变量属于该抽象类,需要在类定义时初始化,不可以在对象的构造函数中初始化。(2) static成员函数在对象成员函数中可以调用,同属于一个类作用域 (3)正确,static成员函数不可以声明为const和virtual,详见C++ primer (4)static成员函数只能够访问static 成员变量。
答案c在标准中的解释:
ISO/IEC 14882:2003(E) ISO/IEC
10.3 Virtual functions
7 [Note: the virtual specifier implies membership, so a virtual function cannot be a nonmember (7.1.2)function. Nor can a virtual function be a static member, since a virtual function call relies on a specific object for determining which function to invoke. A virtual function declared in one class can be declared a friendin another class. ]
#include "stdafx.h"
#ifndef TEST_H
#define TEST_H
#include <stdio.h>
class test
{
private:
int submember;
static int member;
public:
static void writesubtest(int member)
{
//test::submember = member; //error:非静态成员引用必须与特定对象相对
}
virtual static void writetest(int member) //error:仅非静态成员函数可以是虚拟的
{
test::member = member;
}
static void display(int count)//static成员函数,属于抽象类,不属于类对象
{
printf("the count number is %d \n",count);
}
void readtest(int mem) //对象成员函数
{
printf("helllo %d \n",test::submember);
// test::writetest(mem);// static成员函数在对象成员函数中可以调用,同属于一个类作用域,但是,static函数不能包含对stati成员的操作,否则出现错误
display(8);
}
};
#endif
int _tmain(int argc, _TCHAR* argv[])
{
int aa = 2;
test a ;
a.writetest(10);
a.readtest(aa);
return 0;
}
- 关于C++/JAVA类中的static成员和对象成员的说法正确的是:
- 关于C++/JAVA类中的static成员和对象成员的说法正确的是:
- c++中的static关键字(和python的类成员和对象成员类似)
- c++-类的static成员
- 【C/C++】类中的static成员、static const成员和const成员
- 关于STP、RSTP 和MSTP 说法正确的是
- 关于java static成员的学习
- 关于static修饰一个类中的成员函数的问题
- Java面向对象-类成员和实例成员的访问
- C++中的static成员、static const成员和const成员的初始化
- const static与类的数据成员,成员函数,对象
- 关于C++中类的static和const成员
- C++ 类中的static成员的初始化和特点
- 详解C++类的静态成员和C语言中的static
- 类的static成员
- 类的static成员
- 类的static成员
- c/c++ 类的static成员
- Java并发编程:synchronized
- 数据库级别的优化
- [Material Design] 教你做一个Material风格、动画的按钮(MaterialButton)
- mysql分组查询聚合函数
- MPAndroidChart开源图表库(三)之柱形图
- 关于C++/JAVA类中的static成员和对象成员的说法正确的是:
- 计蒜客 22题 排序后的数组删除重复数字
- PostgreSql中WITH语句的使用
- 添加第三方类库造成的Undefined symbols for architecture i386:编译错误
- 常用ARM汇编指令
- Android20_自定义ContentProvider
- 第一篇CSDN博客
- uestc oj 686 Hero Saving Princess
- 用户交互(2-状态)