static-variables相关内容
我想要以下设置: 抽象类父{公共静态字符串 ACONSTANT;//如果允许,我会在这里使用抽象//其他内容如下}类子扩展父{public static String ACONSTANT = "一些值";//等等} 这在java中可能吗?如何?如果可以避免的话,我宁愿不使用实例变量/方法. 谢谢! 编辑: 常量是数据库表的名称.每个子对象都是一个迷你 ORM. 解决方案
..
我试图创建一个静态变量来存储图像字典.不幸的是,我能找到的最好的初始化方法是检查每个使用该变量的函数.由于我在一个类别中创建这个变量,我不能只在初始化程序中初始化它.有没有更简洁的方法来初始化 navigationBarImages? 静态 NSMutableDictionary *navigationBarImages = NULL;@implementation UINavigationBa
..
对于 C++ 类中的静态成员变量 - 初始化在类外完成.我想知道为什么?对此有任何逻辑推理/限制吗?或者它是纯粹的遗留实现 - 标准不想更正? 我认为在类中进行初始化更“直观"且不那么混乱.它还给人以变量的静态和全局性的感觉.例如,如果您看到静态 const 成员. 解决方案 从根本上说,这是因为静态成员必须在一个翻译单元中定义,以免违反 单一定义规则.如果语言允许类似: 结构 G
..
我知道 .OBJ 是编译一个编译单元的结果,.LIB 是一个静态库,可以从几个 .OBJ 创建,但这种区别似乎只在编译单元的数量上.还有其他区别吗?是相同还是不同的文件格式? 当我想知道在两个(或更多).LIB 中定义的相同静态变量是否在链接到最终可执行文件期间被合并时,我遇到了这个问题.对于 .OBJ,变量被合并.但在 .LIB 中是否也一样? 解决方案 .LIB 文件是与索引连接
..
我正在读一本关于 Objective-C 的书,作者说如果局部变量没有赋值,它们将被设置为 nil,但静态变量将被设置为零.所以,我设置了 int a 并且没有给它赋值.然后 NSLog(@"%i", a) 显示它并且 a 显示为零.我对此有点困惑,我想知道是否有人可以为我澄清一下? 解决方案 启用 ARC 后,无论您在何处创建它们,Objective-C 对象指针变量都将设置为 nil.
..
我不太了解在接口的实现中定义的静态变量.在方法中,我确实理解它们与局部变量有何不同,但在实现中直接定义时则不然. 看看这些例子.这两者实际上有什么区别? #include "MyClass.h"@implementation MyClassint myInt;...@结尾 还有: #include "MyClass.h"@implementation MyClass静态 int myI
..
我已经搜索了 C# 中的静态变量,但我仍然不知道它的用途是什么.此外,如果我尝试在方法中声明变量,它不会授予我执行此操作的权限.为什么? 我看过一些关于静态变量的例子.我已经看到我们不需要创建类的实例来访问变量,但这还不足以了解它的用途以及何时使用它. 第二件事 课本{公共静态 int myInt = 0;}公开课练习{静态无效主(){Book book = new Book();C
..
未命名命名空间如何优于 static 关键字? 解决方案 您基本上是指 C++03 标准中的 §7.3.1.1/2 部分, static 关键字的使用是在声明对象时不推荐使用命名空间范围;这未命名命名空间提供了一个优越的替代. 请注意,此段落已在 C++11 中删除.static 函数已按照标准 不再被弃用! 尽管如此,未命名的 namespace 优于 static 关
..
代码如下: #include 整数编号 = 3;//静态外部变量int *ptr = #int main(void){int num2 = 4;//自动变量int *ptr2 = &num2;免费(ptr);//自由静态变量免费(ptr2);//自由自动变量返回0;} 我尝试编译上面的代码并且它可以工作,我很好奇free() 函数是否能够同时释放静态变量和自动变量?还是基本上什么都不做
..
谁能向我解释这个程序的输出是 0 0 0 0 0 的原因吗? 这里我们使用了一个 静态变量 var,它的值不会因函数调用而改变.在递归调用期间,var 的值将是 4,3,2,1.当 var 变为零时,递归终止并且控制转移到 printf 语句. 为什么输出不是1,2,3,4? main(){静态 int var=5;如果(--var)主要的();printf(" %d ",var)
..
好吧,我想我在这里有一个非常基本的疑问: 我正在 GAE (Java) 上开发一个应用程序并对返回很多的数据存储执行查询实体,所以我需要缓存它.我正在使用 memcache 并且它工作得很好,但是如果我将实体列表保存在一个静态变量中,则整个请求的速度是使用 memcache 的两倍.我想那是因为我没有一直反序列化实体. 在内存缓存上使用静态变量有什么缺点?我不知道云中是否有我的应用程序
..
我注意到如果你在代码中用 C++ 初始化一个静态变量,初始化只会在你第一次运行函数时运行. 这很酷,但它是如何实现的?它是否转化为某种扭曲的 if 语句?(如果给定值,则..) void go( int x ){静态 int j = x ;cout
..
我有静态变量的概念,但是类中的静态方法有什么好处.我参与了一些项目,但我没有将方法设为静态.每当我需要调用类的方法时,我都会创建该类的对象并调用所需的方法. 问: 方法中的静态变量即使在执行方法时也保持其值,但只能在其包含的方法中访问,但静态方法的最佳定义是什么? 问: 调用静态方法而不创建该类的对象是静态方法的唯一好处吗? 问:静态方法的可访问范围是多少? 谢谢 解
..
如果我有以下代码: class Foo(object):条 = 1def bah(自我):打印(条)f = Foo()f.bah() 它抱怨 NameError: 全局名称 'bar' 未定义 如何在方法 bah 中访问类/静态变量 bar? 解决方案 使用 self.bar 或 Foo.bar 代替 bar.赋值给 Foo.bar 将创建一个静态变量,赋值给 self.b
..
静态变量和实例变量有什么区别.下面这句话是我无法理解的: 在某些情况下,一个类的所有对象应该只共享一个特定变量的一个副本——这里使用的是静态变量. 静态变量代表类范围的信息.一个类的所有对象共享相同的数据. 我认为实例变量在类范围内使用,而静态变量只在它们自己的方法内有作用域? 解决方案 在类属性的上下文中,static 有不同的含义.如果您有这样的字段: private
..
我正在构建一个在裸机上具有可重定位代码的项目.它是 Cortex M3 嵌入式应用程序.我没有动态链接器,并且在我的启动代码中实现了所有重定位. 大多数情况下它都在工作,但我的本地静态变量似乎定位不正确.它们的地址被我的可执行文件在内存中的偏移量所抵消——即我编译我的代码就好像它是在内存位置 0 处加载的,但我实际上将它加载到位于 0x8000 的内存中.静态局部变量的内存地址偏移了 0x8
..
我在 Python 中有一个 A 类,我想填充一个调用静态方法的静态变量,例如: A 类:arr = []@静态方法def FillArr():#做更多的事情,但为了简洁...A.arr = [[2,2,2,]]FillArr.__func__() 当我运行代码时,我得到“NameError: name A not defined",所以基本上我无法初始化 arr 静态变量.基本上一旦类被实例
..
为什么有些人声明让他们的变量是静态的,就像这样: char baa(int x) {静态字符 foo[] = ".. ";返回 foo[x ..];} 代替: char baa(int x) {字符 foo[] = ".. ";返回 foo[x ..];} 这在 Linux 源代码应用程序中似乎很常见.有什么性能差异吗?如果是,有人可以解释为什么吗?提前致谢. 解决方案 它不是为了
..
所以我使用静态类成员,以便我可以在类方法和同一类的静态方法之间共享数据(该类只会有 1 个实例化).我理解这很好,但我只是想知道静态成员何时初始化?是进口的吗?关于第一次使用类?因为我将要从 1 个以上的模块(因此超过 1 个导入语句)调用此类的静态成员.访问静态方法的所有模块是否共享相同的静态数据成员?如果我的主客户端删除了我的类的实例,然后重新创建它(没有完全终止或重新导入内容),我的数据成员
..
在序列化过程中静态变量的值是如何保持的(如果有的话).我在堆栈上读过类似的问题,其中说静态变量本质上是瞬态的,即它们的状态或当前值未序列化. 我只是做了一个非常简单的例子,我序列化了一个类并将其保存到一个文件中,然后再次从文件中重建了这个类.令人惊讶的是,我发现在序列化发生时静态变量的值被保存了. 这是怎么回事.这是因为在序列化期间保存了类模板及其实例信息.这是代码片段 - publ
..