问题标签 [instance-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.
objective-c - 如何制作真正的私有实例变量?
我想创建一个无法从外部访问的实例变量。在objective-c中可能会有这样的事情吗?我记得苹果有私有变量之类的东西,但如果人们知道它们,他们就可以使用它们。Apple 称其为“私有 API”,但显然其他人如果发现其中的内容,就可以访问这些内容。
到目前为止,我相信这样的事情会创建一个私有实例变量:
没有@property,没有@synthesize,只是上面的声明。
我也知道 Apple 添加了一个 _inFrontOfTheirPrivateInstanceVariables,但他们在某处说他们不喜欢看到其他人这样做,因为他们可能会在这样做时覆盖意外隐藏的实例变量。
这里有什么诀窍?
ruby-on-rails - 为什么我的控制器的实例变量在视图中不起作用(Rails)
我想向我的控制器添加几个实例变量,因为有问题的变量需要在多个操作的视图中。然而,下面的例子并没有像我预期的那样工作。
据我了解,Rails 从控制器中获取实例变量并使其在视图中可用。如果我在动作方法中分配相同的变量,它工作正常 - 但我不想做两次。为什么我的方法行不通?
(注意:这是一个有点垃圾的例子,但我希望它有意义)
编辑:我在这里找到了这个问题的答案:Ruby 实例变量何时设置?
编辑 2:什么时候是使用过滤器(例如 before_filter 和 initialize 方法)的最佳时间?
objective-c - 从描述方法输出iVars?
我很确定我只是在这里错过了重点并感到困惑。谁能告诉我如何为一个对象编写一个简单的描述,将其实例变量的值打印到控制台。
另外:是否无论如何将信息呈现为一个块(即,如果您有 10 个 iVar,让它们一个一个返回会很痛苦)
干杯-加里-
iphone - Objective C - 访问指向自身的 void 指针的 BOOL ivar
我有一个使用 SystemSoundID 播放声音的东西,然后重复使用 C 函数作为声音完成回调,并传递该函数(void *)self
(因为它必须是一个 void 指针),然后我想播放如果 self 的 alarmPlaying BOOL ivar 为 true,则再次发出声音,否则删除声音完成并处理 SSID(提供实例方法将 alarmPlaying 设置为 NO)。self
以 void 指针的形式获取它的 alarmPlaying ivar的正确方法是什么?如果我不需要,使用属性是没有意义的。我不断收到错误Request for member 'alarmPlaying' in something not a structure or union
,以及取消引用 void 指针警告。这是我的功能:
(它在自己的线程上运行,所以我有一个 kAlarmBeepInterval #define'd)
在实施课程时,我有:
谢谢。
python - 常量实例变量?
我@property
用来确保对对象实例变量的更改由我需要的方法包装。
当一个实例有一个逻辑上不应该改变的变量时怎么办?例如,如果我正在为 Process 创建一个类,则每个 Process 实例都应该有一个 PID 属性,该属性将经常被访问但不应更改。
处理试图修改该实例变量的人的最 Pythonic 方式是什么?
只是相信用户不要试图改变他们不应该改变的东西吗?
如果实例变量被更改,使用属性但引发异常?
还有什么?
ruby - 新手:ruby 中的实例变量?
请原谅所有新手的问题,但为什么@game_score 总是为零?
objective-c - Objective-C 中的属性和实例变量
我对 Objective-C 中的属性和实例变量感到很困惑。
我已经完成了 Aaron Hillegass 的“Mac OS X 的 Cocoa 编程”的一半,一切都是合乎逻辑的。你会声明一个像这样的类:
由于其他对象需要操作我们的
name
和items
实例变量,我们使用@property
/@synthesize
为它们生成访问器/修改器。在我们的类中,我们不使用访问器/修改器——我们只是直接与实例变量交互。something
只是我们将在我们的类中使用的一个实例变量,由于没有其他人需要使用它,我们不会为它创建一对访问器和修改器。我们需要与 UI 中的文本字段进行交互,因此我们
IBOutlet
为它声明一个,连接它,我们就完成了。
一切都非常合乎逻辑。
然而,在 iPhone 世界中,情况似乎有所不同。人们为每个实例变量声明属性,为 声明属性IBOutlets
,并使用访问器/修改器与类中的实例变量进行交互(例如,他们会编写[self setName:@"Test"]
而不是name = @"Test"
)。
为什么?到底是怎么回事?这些差异是 iPhone 特有的吗?为所有实例变量声明属性、为 声明属性IBOutlets
以及在您自己的类中使用访问器/修改器有什么好处?
ruby - 声明迭代哈希的实例变量!
我想做以下事情:
我想声明一个遍历字典的类的实例变量。
假设我有这个哈希
我想让每个键作为类的实例变量。我想知道我是否可以声明遍历该哈希的变量。像这样的东西:
我知道这行不通!我只是放了这段代码,看看你是否能更清楚地理解我想要什么。
谢谢!
iphone - 在类级别声明对象,问题。iPhone 目标-C
iPhone 上的目标 C:我试图在类级别声明以下对象,这样我就不必在每次写东西时都重新连接这个套接字。(每秒写多次)每当我写一个稳定的实时数据流时,它大约每 2 秒冻结一次。我不知道为什么,但确实如此。
代码:
我尝试在实例数据中声明变量,然后在 +initialize 和 viewdidload 中对其进行初始化,但没有成功或出现错误。我已经搜索了几个小时试图找到一种方法来解决这个问题,在大约 20 种不同的解决方案之后,我发现没有一个可行。顺便说一下,socket 是来自于objective-c 的smallsockets 包中的一个对象。
小套接字:http ://smallsockets.sourceforge.net/
它工作得很好,除了每隔几秒钟冻结一次实时数据。我已将部分代码缩小到这两行。我知道创建然后连接套接字是导致延迟的原因。
任何帮助都非常感谢。
谢谢!!
[编辑]
这是我尝试的一些示例代码:实例声明:
viewDidLoad:
备用视图didload:
ruby - 实例变量:self vs @
这是一些代码:
我想知道的是 using@age
和self.age
inage_difference_with
方法之间的区别。