static-members相关内容

作为静电字段的单个实例与getInstance()方法中的静电变量

在this thread中,关于单例实例的描述如下: 静电变量可以是getInstance()函数的静电,也可以是Singleton类中的静电。这里有一些有趣的权衡。 这些权衡是什么?我知道,如果声明为static函数变量,则在第一次调用函数之前不会构造单例。我也读过一些关于线程安全的文章,但我不知道这到底需要什么,也不知道这两种方法在这方面有什么不同。 两者之间还有其他主要区别 ..
发布时间:2022-02-27 09:53:56 C/C++开发

何时使用枚举,何时将其替换为具有静态成员的类?

我最近突然想到以下(示例)枚举... 枚举颜色{红色的,绿,黄色的,蓝色} ... 可以替换为看似更安全的类: 类颜色{私人颜色(){}公共静态只读颜色红色=新颜色();公共静态只读颜色绿色=新颜色();公共静态只读颜色黄色=新颜色();公共静态只读颜色蓝色=新颜色();} 对于“类型安全",我的意思是如果 Color 是枚举,则以下语句将起作用,但如果 Color 是上述类,则不会: ..
发布时间:2022-01-24 15:58:21 C#/.NET

在android中定义常量的最佳方法是静态类、接口还是xml资源?

我正在开发一个使用 Web 服务从服务器获取数据的 android 应用程序,因为我有三组不同的 URL 来指向开发系统、测试服务器和实时服务器.每当我想提供测试/直播应用程序时,都很难更改 URL.所以我计划将其设置为可配置的,以便应用程序可以根据我的构建类型配置常量获取适当的 URL.所以, 这是保持这个常量的最好方法,java静态类或java公共接口或xml资源文件.?什么时候?为什么 ..
发布时间:2022-01-23 23:28:36 移动开发

静态类成员的初始化.为什么是 constexpr?

当我想要一个静态指针作为类的成员时,我需要 constexpr 来使用 nullptr 进行初始化. 类应用程序{私人的:constexpr 静态 Application* app = nullptr;} 谁能解释我为什么需要这样做?我找不到静态变量必须在编译时存在的确切原因. 解决方案 那是因为你在类定义中初始化它.这只允许用于常量整数和枚举类型(总是)和 constexpr 数据成 ..
发布时间:2022-01-19 00:08:05 C/C++开发

结构/类中静态常量的奇怪未定义符号

要么我很累,要么发生了一些我不知道的奇怪事情,因为下面的代码导致链接时 Foo::A 和 Foo::B 的符号未定义.这在一个更大的项目中尽可能地最小化,但显示了我所看到的本质. #include 结构 Foo{静态常量 int A = 1;静态常量 int B = 2;};主函数(){返回 std::min(Foo::A, Foo::B);} 没有 std::min 函数模板也可以正 ..

C++静态成员初始化(模板乐趣在里面)

对于静态成员初始化,我使用嵌套的帮助器结构,它适用于非模板类.但是,如果封闭类由模板参数化,则嵌套初始化类不会被实例化,如果辅助对象没有在主代码中访问.为了说明,一个简化的例子(在我的例子中,我需要初始化一个向量). #include #include 结构 A{结构 InitHelper{初始化助手(){A::mA = "你好,我是 A.";}};静态 st ..
发布时间:2022-01-18 23:14:50 C/C++开发

静态成员是否曾经被垃圾收集?

静态成员变量会被垃圾回收吗? 例如,让我们使用下面的类. 公共类 HasStatic {私有静态列表共享 = 新列表();} 假设它是这样使用的: //启动{HasStatic a = new HasStatic();HasStatic b = 新 HasStatic();HasStatic c = 新 HasStatic();HasStatic d = 新的 Ha ..
发布时间:2022-01-16 09:27:48 C#/.NET

Swift 中的隐式惰性静态成员

我刚刚注意到 Swift structs 的 static 成员是隐式的 lazy. 例如,这只会调用 init 一次: class Baz {在里面(){打印(“初始化巴兹")}}结构 Foo {静态 let bar = Baz()}var z = Foo.barz = Foo.bar 这背后的原理是什么? 如果我想要相反的行为怎么办? 解决方案 static 属性定义了 ..
发布时间:2022-01-05 20:34:22 移动开发

为什么 Scala 在类中没有静态成员?

我知道你可以间接定义它们 使用伴随对象实现类似的东西,但我想知道为什么作为一种语言设计,静态变量会从类定义中删除. 解决方案 我也在 scala 用户 google group 上发布了这个问题,Bill Venners 是“Programming in scala"回复的作者之一,他有一些见解. 看看这个:https://groups.google.com/d/msg/scala- ..
发布时间:2022-01-05 20:33:57 其他开发

为什么非静态内部类不能有静态成员(字段和方法)?

可能的重复: 为什么我们不能在内部类中有静态方法? 我知道创建一个非静态内部类对象需要一个外部类对象,并且创建的非静态内部类对象自动具有对外部类对象的隐藏引用.但是为什么非静态内部类不能有静态成员呢?Java设计者只需要禁止内部类的静态方法内部的非静态外部类字段的访问,它会更有意义,非? 如果内部类有静态成员没有意义,为什么内部类可以通过继承有静态成员的类来继承静态成员? 我读 ..
发布时间:2022-01-05 20:28:40 Java开发

在 android 中定义常量的最佳方法是静态类、接口还是 xml 资源?

我正在开发一个 android 应用程序,它使用 Web 服务从服务器获取数据,为此我有三组不同的 URL 指向开发系统、测试服务器和实时服务器.每当我想提供测试/实时应用程序时,都很难更改 URL.所以我计划将其设置为可配置的,以便应用程序可以根据我的构建类型配置常量获取适当的 URL.所以, 这是保持这个常量的最好方法,java静态类或java公共接口或xml资源文件.?什么时候?为什么 ..
发布时间:2022-01-03 09:08:37 移动开发

将 XAML 中的标签文本设置为字符串常量

我有一个字符串常量,我必须在几个不同的 XAML 布局中重新使用它,因此我不想复制它,而是将它绑定到一个常量. 我有一个在 C# 中定义字符串的类: 公共静态类 StringConstants{公共静态字符串 MyString { 获取 { 返回“SomeConstant";} }} 我希望能够通过 XAML 通过如下方式设置值: 这能实现吗?我已经搜索了示例,但我只找到了涉及对代 ..
发布时间:2021-12-27 18:56:19 C#/.NET

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

我确实有一个如下所示的类: //.h文件类 __declspec(dllimport) MyClass{上市://东西私人的:静态 int myInt;};//.cpp 文件int MyClass::myInt = 0; 我收到以下编译错误: error C2491: 'MyClass::myInt' : 不允许定义 dllimport 静态数据成员 我该怎么办? 解决方案 __d ..
发布时间:2021-12-25 16:21:03 C/C++开发

如何序列化 Java 类的静态数据成员?

当我们序列化对象时,静态成员并没有被序列化,但是如果我们需要这样做,有什么办法吗? 解决方案 第一个问题是为什么需要序列化静态成员? 静态成员与类相关联,而不是与实例相关联,因此在序列化实例时包含它们是没有意义的. 第一个解决方案是让这些成员不是静态的.或者,如果这些成员在原始类和目标类中相同(相同的类,但可能不同的运行时环境),则根本不要序列化它们. 我对如何跨静态成员 ..
发布时间:2021-12-21 22:00:32 Java开发

constexpr 使用静态函数初始化静态成员

要求 我想要一个从 constexpr 函数计算的 constexpr 值(即编译时常量).而且我希望这两个范围都在类的命名空间内,即静态方法和类的静态成员. 第一次尝试 我首先用(对我来说)显而易见的方式写了这个: class C1 {constexpr 静态 int foo(int x) { 返回 x + 1;}constexpr 静态 int bar = foo(size ..
发布时间:2021-12-18 23:03:24 C/C++开发