问题标签 [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 回答
9752 浏览

c# - ASP.net中使用静态变量缓存信息可以吗?

目前,我正在 ASP.net 上使用 C# 3.5 开发项目管理应用程序。为了减少对数据库的访问,我使用静态变量缓存了大量信息。例如,用户列表保存在内存中的静态类中。该类在启动时从数据库中读取所有信息,并在进行更改时更新数据库,但它永远不需要从数据库中读取。

该类在写入数据库的同时使用更新的信息 ping 其他网络服务器(如果它们存在)。ping 机制是一种 Windows 服务,缓存对象使用随机可用端口注册到该服务。它也用于其他事情。

数据量并不是那么大。目前我使用它只是为了缓存用户(密码哈希、权限、姓名、电子邮件等)。它只是保存了一堆对数据库的调用。

我想知道这种方法是否存在任何缺陷和/或是否有更好的方法来缓存数据?

0 投票
3 回答
7080 浏览

php - 跨多个 .php 页面的 PHP 静态变量

我正在用 PHP 构建一个 POP3 邮箱。我有以下文件

  • server_access.php(从 POP3 服务器获取邮件)
  • data_access.php(获取/写入邮件到本地数据库)
  • mime_parser.php(解析 MIME 内容)
  • core.php(使用上述文件并将解析的邮件存储为名为 $inbox 的 assoc 数组)

现在,我有页面mailbox.php 来显示收件箱和showmail.php 来显示每封邮件。用户的凭据存储在 .ini 文件中并在必要时使用。问题是,我在mailbox.php 和showmail.php 中都做了一个require_once('core.php')

我能够显示收件箱(即 $inbox 有值),但是,如果我选择阅读邮件(showmail.php 的弹出窗口),$inbox 是一个空数组。

$inbox 在 core.php 中被定义为一个静态数组

0 投票
5 回答
199791 浏览

python - 如何在 Python 的方法中访问“静态”类变量?

如果我有以下代码:

它抱怨

NameError:未定义全局名称“bar”

如何访问bar方法中的类/静态变量bah

0 投票
5 回答
23270 浏览

c# - C#中的静态变量

在 C# 中,有没有办法将静态变量放入像 VB.Net 这样的方法中?

0 投票
5 回答
1348 浏览

c++ - 如何声明两个不同的静态变量?(C++)

编辑:将它们声明为私有是一个错字,我修复了它:

关于另一个问题,如果我在一个类中声明了一个静态变量,然后从中派生一个类,有没有办法将静态变量声明为每个类的单独变量。IE:

这是否定义了两个不同的静态变量x,一个用于 A,一个用于 B,或者重新定义时会出现错误x,如果确实出现错误,如何创建两个单独的静态变量?

0 投票
6 回答
56629 浏览

c++ - C++ 静态初始化顺序

当我在 C++ 中使用静态变量时,我经常想要初始化一个变量,然后将另一个变量传递给它的构造函数。换句话说,我想创建相互依赖的静态实例。

在单个 .cpp 或 .h 文件中,这不是问题:实例将按照它们声明的顺序创建。但是,当您想用另一个编译单元中的实例初始化静态实例时,似乎无法指定顺序。结果是,根据天气情况,可能会构建依赖于另一个实例的实例,然后才构建另一个实例。结果是第一个实例初始化不正确。

有谁知道如何确保以正确的顺序创建静态对象?我已经搜索了很长时间的解决方案,尝试了所有解决方案(包括 Schwarz Counter 解决方案),但我开始怀疑是否有一个真正有效的解决方案。

一种可能性是使用静态函数成员的技巧:

确实,这确实有效。遗憾的是,您必须编写 globalObject().MemberFunction(),而不是 globalObject.MemberFunction(),导致客户端代码有些混乱和不雅。

更新:感谢您的反应。遗憾的是,似乎我确实已经回答了我自己的问题。我想我得学会忍受它...

0 投票
4 回答
98605 浏览

objective-c - 接口实现中静态变量的含义是什么?

在接口的实现中定义静态变量时,我不太了解。在方法中,我确实了解它们与局部变量的区别,但不是直接在实现中定义的。

看看这些例子。这两者实际上有什么区别?

和:

myInt在这两种情况下对所有方法都是可见的,如果我解释了我正确运行的测试,那么myInt在这两种情况下对于类的不同实例来说都是同一个变量。

0 投票
3 回答
8102 浏览

r - R中的静态变量

我在 R 中有一个函数,我多次调用它。我想跟踪我调用它的次数,并用它来决定在函数内部做什么。这是我现在拥有的:

我不喜欢我必须在函数范围之外声明变量计数。在 C 或 C++ 中,我可以只创建一个静态变量。我可以用 R 编程语言做类似的事情吗?

0 投票
3 回答
6650 浏览

java - Google App Engine:Memcache 还是静态变量?

好吧,我想我在这里有一个非常基本的疑问:

我正在 GAE (Java) 上开发一个应用程序并对返回大量实体的数据存储执行查询,所以我需要缓存它。我使用的是 memcache,它工作得很好,但是如果我将实体列表保存在一个静态变量中,整个请求的速度是使用 memcache 的两倍。我认为那是因为我并没有一直反序列化实体。

在 memcache 上使用静态变量有什么缺点?我不知道云中是否有我的应用程序的多个实例,因此我的静态变量有几个实例?

我要缓存的实体列表是上周最好的(更高的分数)帖子。我拿了那个列表,随机选择了 5 个帖子,并在几页中显示它们。

谢谢您的帮助!

0 投票
2 回答
14450 浏览

c++ - .LIB 和 .OBJ 文件有什么区别?(Visual Studio C++)

我知道 .OBJ 是编译一个编译单元的结果,而 .LIB 是一个可以从多个 .OBJ 创建的静态库,但这种差异似乎仅在于编译单元的数量。还有其他区别吗?它是相同的还是不同的文件格式?

当我想知道在两个(或更多).LIB 中定义的相同静态变量是否在链接到最终可执行文件期间被合并时,我遇到了这个问题。对于 .OBJ,变量被合并。但在.LIBs 中是否相同?