问题标签 [static-variables]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
4224 浏览

java - 在声明之前如何访问静态变量?

为什么我可以在课堂上使用 y ,但不能直接使用?

y 什么时候定义?

0 投票
10 回答
13682 浏览

c - 在 C 中,在函数中使用静态变量会使其更快吗?

我的函数将被调用数千次。如果我想让它更快,将局部函数变量更改为静态有什么用吗?我背后的逻辑是,因为静态变量在函数调用之间是持久的,它们只在第一次分配,因此,每个后续调用都不会为它们分配内存并且会变得更快,因为内存分配步骤没有完成。

另外,如果上述情况属实,那么每次调用函数时使用全局变量而不是参数会更快地将信息传递给函数吗?我认为在每个函数调用上也为参数分配空间,以允许递归(这就是递归占用更多内存的原因),但由于我的函数不是递归的,如果我的推理是正确的,那么理论上取消参数会使它更快。

我知道我想做的这些事情是可怕的编程习惯,但是请告诉我这是否明智。无论如何我都会尝试,但请给我你的意见。

0 投票
2 回答
437 浏览

xcode - Xcode 链接器和块:未定义符号“___block_global_1”

我正在尝试在 Xcode 3.2.4 中构建应用程序并收到以下链接器错误:

我无法解释我在源文件中所做的可能导致错误的操作。我确实有一个我定义为全局变量的块,如下所示:

这个块是在源代码的一个空命名空间中定义的(我正在编译 Objective-C++。)一切都编译没有错误。

更新:将块移动为引用它的例程的局部变量是一种可行的(尽管不是首选)解决方法。

是什么赋予了?

0 投票
2 回答
8167 浏览

java - 在 Java 中继承静态变量

我想要以下设置:

这在java中可能吗?如何?如果可以避免的话,我宁愿不使用实例变量/方法。

谢谢!

编辑:

常量是数据库表的名称。每个子对象都是一个迷你 ORM。

0 投票
2 回答
12316 浏览

iphone - Objective C - 静态和全局变量?

在名为 Ad 的类的 .m 文件中,我有 3 个静态字符串

我可以简单地在当前类中使用这些静态变量,但我不能从任何其他类中调用它们,有没有办法让这些静态变量成为全局变量?因此,例如在我的视图控制器类中,我可以做类似的事情。

0 投票
2 回答
3238 浏览

android - 如何擦除Android中的静态变量

我在 StackOverflow 上阅读了这篇文章。据此,静态变量将被删除,如果

  1. 类已卸载
  2. JVM 关闭
  3. 进程死亡

但是如何销毁/杀死我的应用程序(应用程序进程),从而以编程方式从我的应用程序中删除所有静态变量?!

谢谢,

穆尔

UPD

这些静态变量将通过从服务器读取一些数据来填充。这是一个测试工作流程:

  1. 我启动应用程序-> 将填充静态变量
  2. 我按返回按钮进入家庭活动 - >将调用完成()
  3. 我关闭了互联网连接(我确定没有连接)
  4. 然后我再次开始申请
  5. 静态变量仍然被填充

一些想法?

是否有可能关闭应用程序的所有活动?在这种情况下,应用程序会“关闭”吗?

附言。是的,我知道,这不是使用静态变量的最佳方式,但我不是该应用程序的作者,我只是在修复错误并为其添加一些新功能。

0 投票
6 回答
2127 浏览

c++ - 在 C++ 中,如果两个不同的函数声明相同的静态变量会发生什么?

0 投票
2 回答
377 浏览

php - 如何在 PHP 中创建或模拟文件静态变量?

我想在 PHP 中创建一个文件静态变量。我该怎么做或者我应该用什么来代替?

编辑:

我基本上想创建一个文件范围的静态变量,类似于 C/C++ 中可用的变量。

0 投票
7 回答
17137 浏览

php - PHP OOP - 常量与静态变量?

在 PHP 中,有什么区别:

  1. 常量和静态变量?
  2. 扩展一个类并创建它的对象?

我知道如何使用它们,但我无法清楚地区分它们。

0 投票
4 回答
316 浏览

c++ - 迭代一个类的所有对象(但不是该类的父类 - C++)

我想创建一个结构,我可以在其中“迭代”一个类的所有对象(可能还有所有派生类的对象,尽管这被忽略了)。但是它不应该遍历“父”类:

假设我有以下系统:

A是基类
CD派生自
E派生自C

现在,如果我要“迭代 D”,我想迭代 D,而不是 a。然而,同样我希望能够“迭代 C”——这将让我迭代所有“C”对象——可能还有所有 E 对象(虽然这不是必需的,但也不错) .

我怎样才能做到这一点?

我尝试通过放置一个名为“myObjects”的静态变量来链接所有对象。但是我很快注意到我不能在派生类中重载静态变量。(因此 C 的“myObjects”与 A 或 D 的“myObjects”相同)