class Order{
int Number;
public:
Order(){
int static i=0;
Number=++i;
}
int getNumber(){
return Number;
}
.
.
Order *o1 = new Order();
o1.getNumber();
Order *o2 = new Order();
o2.getNumber();
Order *o3 = new Order();
o3.getNumber();
//Result : 1 ,2 ,3
1,1,1
但似乎静态变量背后的过程是不同的!那么,这个静态变量背后到底发生了什么,它是如何工作的呢?
static
类变量在该类的所有实例中都有一个实例。对于标准变量,类的每个实例都创建该变量的一个实例,但是对于static
变量,它们都共享同一个实例。如果您要打印静态int i
的内存地址,您将看到,无论您使用的是哪个顺序
,内存地址都是相同的。
有人已经在评论中提到了这一点,但如果其他人没有注意到,请阅读C++中的static
:static关键字及其在C++中的各种用法
您的问题很可能被否决了,因为您可以通过搜索而不是提问,轻松地了解static关键字及其用法。
如何使用如下变量设置State: 请帮忙,我做这件事有困难。
如何使用变量作为对象中的名称参数? 电流输出: 我想要实现的输出:
自从谷歌将Kotlin作为Android的一流语言以来,关于如何使用Kotlin(“Java风格”)执行某些操作的问题越来越多。最常见的是如何在Kotlin中使变量。那么如何使Kotlin变量和函数?
库加载良好,但似乎找不到静态变量。为什么没有加载静态变量?
我搜索过,似乎这被称为列表理解,但它是如何工作的?
我有一个关于java中最终变量的问题,我已经编写了一个简短的代码来演示这个问题。java8的语言规范规定: 一旦分配了最终变量,它始终包含相同的值。如果最终变量包含对对象的引用,则对象的状态可能会因对该对象的操作而改变,但该变量始终引用同一对象。语言规范 为了进一步研究,我在一个小示例代码中尝试了三件事。我尝试的第一件事是创建一个类型的对象并为其分配非最终引用。然后我也为它分配了一个最终引用。在第