问题标签 [static-members]

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 投票
4 回答
11110 浏览

c++ - 私有类函数与未命名命名空间中的函数

我发现自己倾向于没有私有类函数。如果可能的话,私有类函数的所有候选者,而不是我放入未命名的命名空间并将所有必要的信息作为函数参数传递。我没有一个合理的解释为什么我要这样做,但至少在我看来它看起来更自然。因此,我需要在头文件中公开较少的内部细节。

你的意见是什么——这是正确的做法吗?

0 投票
3 回答
45353 浏览

c++ - dllimport静态数据成员的C++定义

我确实有一个如下所示的课程:

我收到以下编译错误:

我应该怎么办?

0 投票
6 回答
766 浏览

c# - 通用问题...从通用类调用静态方法

我有一个通用类:

从那个泛型类中,我想从 LinkedItem 类访问一个静态函数,它是 MyItem 类的后代。(因此无需创建 LinkedItem 的实例)。

可能吗?

谢谢,

埃里克

0 投票
2 回答
112 浏览

multithreading - 锁定以修改静态值类型成员。有必要吗?

我有一个 CacheHelper 类来促进与缓存的交互。我想使用静态 int 字段来指定我的缓存超时。该字段最初设置为 const 默认值,但我想为应用程序提供一种更改默认超时值的方法。

修改静态值类型时需要加锁吗?设置器中的锁是否必要?您还可以在这里看到其他问题吗?抱歉,在多线程方面我仍然很愚蠢。

谢谢。

0 投票
1 回答
494 浏览

vb.net - 网络花园上的 vb.net 静态变量

vb.net 静态变量是否适用于 IIS 网络花园?

0 投票
2 回答
841 浏览

c++ - 我在 Clang 中发现错误了吗?

我试图编译下面的代码Clang

上面的代码在编译时没有给出任何错误Clang.

但是当我编译相同的代码时,g++我得到了预期的错误。

所以我发现了一个错误Clang吗?

0 投票
2 回答
235 浏览

java - 锁定 Java 类中静态成员的获取

我目前正在解决由于严重的锁争用导致的性能下降问题。我正在考虑“锁定拆分”来解决这个问题。

骨架使用模式是::

当前使用情况::

我的方法::

因为method1()并且method2()不使用相同的资源,所以我正在考虑拆分锁。到目前为止,它们都在争夺 Class 锁,因为它们都是静态同步的。我正在考虑将其更改为::

他们现在会争夺“班级锁”还是resr1Lock/ resrc2Lock

0 投票
1 回答
638 浏览

thread-safety - 可以通过静态方法实例化 IWindsorContainer 吗?

我还在摸索温莎城堡。目前,我所有需要 IWindsorContainer 的页面都通过一个属性自己实例化一个:

我有点厌倦了从一页到另一页复制和粘贴这个属性和支持字段!另外我不太了解 IWindsorContainer 的生命周期。

我宁愿通过某个类的静态属性获得其中之一,但有谁知道我是否可以认为它是线程安全的?你们如何使用 IWindsorContainer?

0 投票
2 回答
3749 浏览

c++ - 初始化模板类的静态成员

我试图弄清楚为什么这个例子不能编译。我的理解是,如果未明确设置静态变量,则默认为 0。在下面的五个示例中,其中四个的行为符合我的预期,但被注释掉的那个不会编译。

为什么不做与orint Bar<2>::i相同的事情?int Foo::istatic int i

编辑:我忘记将 template<> 添加到 Bar<2> 和 Bar<3> 声明中。(虽然没有解决问题,仍然出现链接器错误)

0 投票
5 回答
3127 浏览

c++ - 由于使用静态变量导致的未定义引用错误

我今天早些时候问了一个关于单例的问题,我在理解我遇到的一些错误时遇到了一些困难。我有以下代码:

计时.h

时序.cpp

这段代码中有两个我无法弄清楚的错误。

  1. 该方法GetInstance()在标头中声明为静态。为什么在 cpp 文件中我必须省略这个词static?它给出了错误:“不能声明成员函数'static Timing * Timing::GetInstance()'具有静态链接”。正确的写法是:

    /li>
  2. 为什么我不能写_singleInstance = new Timing();?它给出了错误:“对 Timing::_singleInstance 的未定义引用”。_singleInstance我通过在 cpp 文件中定义为全局 var解决了这个错误。