标签: static

静态constexpr变量有意义吗?

如果我有一个函数(比方说,一个大阵列)内的变量,它是有意义的声明它既staticconstexprconstexpr保证数组是在编译时创建的,那么它会static没用吗?

void f() {
    static constexpr int x [] = {
        // a few thousand elements
    };
    // do something with the array
}
Run Code Online (Sandbox Code Playgroud)

static在生成的代码或语义方面,实际上是在做什么吗?

c++ static constexpr c++11

172
推荐指数
3
解决办法
7万
查看次数

C中的静态函数

在C中使函数静态有什么意义?

c static

167
推荐指数
6
解决办法
12万
查看次数

从常规ES6类方法中调用静态方法

调用静态方法的标准方法是什么?我可以考虑使用constructor或使用类本身的名称,我不喜欢后者,因为它没有必要.前者是推荐的方式,还是还有其他的东西?

这是一个(人为的)例子:

class SomeObject {
  constructor(n){
    this.n = n;
  }

  static print(n){
    console.log(n);
  }

  printN(){
    this.constructor.print(this.n);
  }
}
Run Code Online (Sandbox Code Playgroud)

javascript static class ecmascript-6 es6-class

161
推荐指数
3
解决办法
10万
查看次数

如何从静态上下文中获取资源内容?

我想xml在我做很多其他事情之前从文件中读取字符串,比如setText在窗口小部件上做什么,所以如果没有要调用的活动对象,我怎么能这样做getResources()呢?

java static android const android-resources

160
推荐指数
5
解决办法
12万
查看次数

C++中的堆栈,静态和堆

我已经搜索过了,但我对这三个概念并不是很了解.我何时必须使用动态分配(在堆中)以及它的真正优势是什么?静态和堆栈有什么问题?我可以编写整个应用程序而无需在堆中分配变量吗?

我听说其他语言包含了"垃圾收集器",所以你不必担心内存.垃圾收集器做什么?

您可以自己操作内存,而不能使用此垃圾收集器吗?

有人告诉我这个声明:

int * asafe=new int;
Run Code Online (Sandbox Code Playgroud)

我有一个"指针指针".这是什么意思?它不同于:

asafe=new int;
Run Code Online (Sandbox Code Playgroud)

c++ heap stack static garbage-collection

157
推荐指数
4
解决办法
14万
查看次数

仅检索在Java类中声明的静态字段

我有以下课程:

public class Test {
    public static int a = 0;
    public int b = 1;
}
Run Code Online (Sandbox Code Playgroud)

是否可以使用反射来获取静态字段列表?我知道我可以获得所有字段的数组Test.class.getDeclaredFields().但似乎没有办法确定Field实例是否代表静态字段.

java reflection static field

152
推荐指数
2
解决办法
7万
查看次数

成员函数中的静态变量

有人可以解释成员函数中的静态变量如何在C++中工作.

鉴于以下课程:

class A {
   void foo() {
      static int i;
      i++;
   }
}
Run Code Online (Sandbox Code Playgroud)

如果我声明了多个实例A,那么调用foo()一个实例会增加i所有实例上的静态变量吗?或者只是它被召唤的那个?

我假设每个实例都有自己的副本i,但是通过一些代码,我似乎另有说明.

c++ static scope

151
推荐指数
3
解决办法
8万
查看次数

为什么我不能在接口中声明静态方法?

该主题大部分都说明了 - 静态方法无法在接口中声明的原因是什么?

public interface ITest {
    public static String test();
}
Run Code Online (Sandbox Code Playgroud)

上面的代码给出了以下错误(至少在Eclipse中):"接口方法ITest.test()的非法修饰符;只允许使用public和abstract".

java methods static interface

148
推荐指数
6
解决办法
10万
查看次数

Java中私有静态变量的用途是什么?

如果变量声明为public static varName;,那么我可以从任何地方访问它ClassName.varName.我也知道静态成员由类的所有实例共享,并且不会在每个实例中重新分配.

声明变量与声明变量有private static varName;什么不同private varName;

在这两种情况下,它都不能ClassName.varName作为ClassInstance.varName任何其他类访问.

将变量声明为静态会给它带来其他特殊属性吗?

java variables static private

147
推荐指数
8
解决办法
28万
查看次数

Java同步静态方法:锁定对象或类

Java教程说:"同一个对象上的两个同步方法的调用不可能交错."

这对静态方法意味着什么?由于静态方法没有关联对象,所以synchronized关键字会锁定类,而不是对象吗?

java methods static class synchronized

144
推荐指数
4
解决办法
10万
查看次数