问题标签 [weak]

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 投票
2 回答
2045 浏览

ios - Cross-Store 与 Fetched Properties 的弱关系?

我想将我的参考数据与我的核心数据模型中的用户数据分开,以简化我的应用程序的未来更新(因为,我计划将数据库存储在云上,并且不需要将参考数据存储在云上这是我的应用程序的一部分)。因此,我一直在寻找一种使用获取的属性对跨商店关系进行编码的方法。我还没有找到任何示例实现。

我有一个使用 2 种配置的核心数据模型:

  • 数据模型配置 1:UserData(相对于用户的实体)

  • 数据模型配置 2:ReferenceData(相对于应用程序本身的实体)

我为这两个配置设置了 2 个不同的 SQLite 持久存储。

  • UserData 配置(和存储)包含实体“用户”

  • ReferenceData 配置(和存储)包含实体“类型”和“项目”。

我想创建两个单向弱关系,如下所示:

  • “用户”具有唯一的“类型”

  • 一个“用户”有许多“项目”

这是我的问题:

  • 如何设置我的属性?

  • 每个关系是否需要 2 个属性(一个用于存储唯一 ID,另一个用于访问我获取的结果)?

  • 这种微弱的关系能否有序?

  • 有人可以给我一个示例实现吗?

作为马库斯回答的后续:

浏览论坛和文档,我读到我应该使用我的实体实例的 URI 表示而不是 objectID。这背后的原因是什么?

接下来,我想知道,如何将我的对象 B URI (NSURL) 作为弱关系存储在我的父对象 A 中?我应该使用什么属性类型?我该如何转换?我听说存档...?

然后,稍后我应该以相同的方式检索托管对象(通过取消转换/取消归档 URIRepresentation)并从 URI 获取对象

最后但同样重要的是,我是否应该在我的实体 A 中声明两个属性,一个用于保持 URI 需求,另一个用于检索直接对象 B?

正如你所读到的,我真的很想念一些简单的例子来实现这些弱关系!我真的很感激一些帮助。

0 投票
1 回答
2209 浏览

xcode4.2 - Xcode 4.2 中 ARC 中的 __weak 和自动释放池

我的项目使用ARC。我用下面的代码进行了测试:

我认为它输出为:

但它实际上输出:

我不明白。__weak 的作用是什么?

编辑:

下面的代码:

它还输出为:

0 投票
2 回答
9113 浏览

iphone - iOS ARC - 弱属性和强属性

我试图了解 ARC 的工作方式,据我所知,我应该在这里做错事。这是我正在使用的代码:

界面:

执行:

执行此操作后,我得到:

如果我没记错的话,由于 myPointer 很弱,它不应该保留对象的内容。因此,它应该显示 nil 而不是“Hello World!”。

我究竟做错了什么?

根据 Caleb 的回答,我创建了另一个弱指针,请参见下面的代码:

关键是我仍然得到了与以前相同的答案:

0 投票
1 回答
733 浏览

c# - DUKPT 算法是否生成弱 DES 密钥?

我正在使用 DUKPT 算法为 DES 加密算法生成密钥。当您尝试使用弱密钥时,DES 的 C# 实现会引发异常。

DUKPT 算法是否有可能生成弱密钥,还是避免它们?如果它确实生成了弱密钥,我该怎么办?

0 投票
1 回答
960 浏览

objective-c - ObjC自动引用计数(ARC):弱vs分配vs unsafe_unretained代表?

我有一堂课:

和实施:

当我为 ARC 重构代码时,它告诉我只允许在 ARC/GC 模式下合成“弱”属性。但据我所知,委托在 ARC 中可能是“弱”的,而且,如果我将其更改为分配,那么它将被转换为 unsafe_unretained。

我的问题是,这是否意味着转换(到 ARC)之前的代码不应该使用任何 ARC?

谢谢!

0 投票
3 回答
400 浏览

objective-c - 将 WEAK 设置为非 @property 变量

需要了解 ARC 的人来帮助我。

基本上,我已经在我的班级中声明了一些变量

如您所见,我可以将弱标识符设置为NSString* one. 但是,我不需要 getter/setter/synthesizer,NSString* two因为它只是一个公共变量。如何为其设置weak标签以便释放内存?还是自动设置?

0 投票
2 回答
1162 浏览

objective-c - 如何使用ARC中的“弱”?

我用:

有一个警告:

属性 'videoView' 需要定义方法 'videoView' - 使用 @synthesize、@dynamic 或在此类实现中提供方法实现

然后我尝试:

有一个错误:

当前部署目标不支持自动 __weak 引用。

还有一个问题:

我可以用这种方式吗?

0 投票
2 回答
914 浏览

gcc - 在 MinGW 中使用 scriptedmain 时遇到问题

我想用 C 语言重现这个 Perl 代码,将 API 和 CLI 捆绑在同一个 C 源代码文件(scriptedmain)中。这是在 Pythonif __name__=="__main__": main()和 gcc/Unix 中完成的,如下所示:

脚本main.h

脚本main.c

测试.c

但是,当我尝试使用 gcc/Strawberry 进行编译时,我得到:

当我尝试使用 gcc/MinGW 编译时,我得到:

如何让 GCC 在 Windows 中识别__attribute__((weak))语法?

此外,G++ 显示相同的错误。

0 投票
1 回答
1815 浏览

automatic-ref-counting - ARC 项目中 NSTextView 的 IBOutlet

正如您在这里所读到的,在大多数情况下 aIBOutlet应该是弱的。

现在您可以在开发库中阅读,并非所有类都支持弱引用。(例如 NSTextView)。这意味着您必须使用分配:

如果您使用弱引用,您将收到以下错误:“不允许合成弱不可用属性,因为它需要合成 __weak 对象的 ivar”

文档没有提到的是,现在您必须在使用该属性后再次将其设置为 nil,例如通过一种dealloc方法:

据我了解,标有的类NS_AUTOMATED_REFCOUNT_WEAK_UNAVAILABLE不支持弱引用,但原因是什么?

0 投票
4 回答
4016 浏览

iphone - 使用块时避免保留循环的正确方法是什么

在由属性强烈定义的 NSMutableArray 中添加对象的正确方法是什么。

如果我将创建类似的弱引用

我也试过

更新由属性定义的原始对象的正确方法是什么?