77问答网
所有问题
当前搜索:
非静态函数访问静态成员
在c++中,类的
静态成员函数
可以通过类的指针
访问
类的
非静态
数据成员吗...
答:
<<endl; }; static void access(A*a)//静态成员,参数为对象指针 { a->data++; cout<data<<endl;//通过指针访问内部
非静态
对象;但不能用this指针直接来访问 } }; int main() { A b(2); b.access(&b);//
静态成员函数访问
return 0; } ...
C++ 什么情况下,一个类中的
成员函数
不能调用这个类的另一个成员...
答:
通常情况下有:①funa是类中的静态成员函数,funb是类中的
非静态成员函数
②funa是类中的常成员函数,funb是类中的非常成员函数 ③funb是类中(该类为基类)的纯虚函数 等等
虚函数必须是基类的
非静态成员函数
,这是什么意思
答:
虚函数必须是基类的
非静态成员函数
意思是虚函数必定有返回值,头部需要有函数返回值类型,同时没有函数体。非类的成员函数不能定义为虚函数,类的成员函数中静态成员函数和构造函数也不能定义为虚函数,但可以将析构函数定义为虚函数。
C++中,可以在不建立对象的情况下调用类
成员
吗?
答:
静态的
成员
变量和
函数
存在全局段,整个程序只有一份,所以可以直接用类名来引用。
非静态
的是没有空间的,只有实例化一个对象的时候才会有空间,所以不能用类名来引用,只能用对象来引用。举个例子:class A { public:int x;
static
int y;};A a, b;a.x = 10;b.x = 20;如果你用类来引用x,...
静态内部类中可以定义
非静态成员
吗?为什么?
答:
可以定义,因为,静态内部类也是一个类,类里面可以定义静态成员,也可以定义
非静态成员
。对于 在静态内部类里面的静态成员和非静态成员的区别在于:静态内部类的非静态成员可以
访问
外部类的静态变量,而静态成员则不可以。
静态成员函数
没有this指针,是怎么实现被对象
访问
的。
答:
static int foo(); //静态函数 int foo2();};int cls::foo(){ ++cls::m_static_value; // 类的
静态函数访问
类的
静态成员
变量 } int cls::foo2(){ ++m_value;} int cls:m_static_value = 0;cls var;var.foo2(); //调用类的
非静态函数
cls::foo(); //调用类的静态成员函数...
C++ 中
static
和final的区别是什么
答:
1、在类中,用static声明的成员变量为
静态成员
变量,它为该类的公用变量,在类加载的时候被创建并初始化(只被创建初始化一次),对于该类的所有对象来说,staitic成员变量只有一份。2、用static声明的方法为静态方法,在调用该方法时,不会将对象的引用传递给它,所以在static方法中不可
访问非静态
的...
static
关键字的作用?
答:
static 方法中不能使用this和super关键字,不能调用非static方法,只能访问所属类的
静态成员
变量和成员方法,因为当static方法被调用的时候,这个类的对象可能还没有被创建,即使已经被创建,也无法确定调用哪个对象的方法。同理static方法也不能
访问非static
类型的变量。static的一个很重要的的用途的是实现...
计算机c语言中什么是
静态函数
答:
静态函数是函数的一种,函数包括静态函数和
非静态函数
两种。其中静态函数是有
static
修饰的函数,如果没有,则为非静态函数(全局函数)。静态函数(带static的),只能在本文件中使用,无法跨文件。而非静态函数(不带static的),可以在任何一个文件中使用。当在其它文件中使用时,需要做函数声明后再使用。
c++语言中类中的
静态
数据
成员
为什么必须在类体外初始化?
答:
static
int a; //声明但未定义 };int A::a = 3; //定义了静态成员变量,同时初始化。也可以写"int A:a;",即不给初值,同样可以通过编译 int main() { printf("%d", A::a);return 0;} 这样就对了,因为给a分配了内存,所以可以
访问静态成员
变量a了。因为类中的静态成员变量仅仅是...
棣栭〉
<涓婁竴椤
4
5
6
7
9
10
8
11
12
13
涓嬩竴椤
灏鹃〉
其他人还搜