Futurebasic/语言/参考/def apndstr
✔ 外观 ✔ 标准 ✔ 控制台
DEF APNDSTR(string$, STR#resourceHndl&)
此语句将指定的 string$ 添加到由 STR#resourceHndl& 指定的可重定位块的末尾。 STR#resourceHndl& 应指向现有的 "STR#" 资源的句柄,或者指向您打算将其保存为 STR# 资源的块的句柄。 要创建一个用于 DEF APNDSTR 的新的空句柄,您应该像这样创建它
myHandle& = FN NEWHANDLE _clear (2)
在您将字符串添加到新句柄之后,您可以通过调用 ADDRESOURCE 例程 (http://developer.apple.com/documentation/mac/MoreToolbox/MoreToolbox-64.html) 将其保存为资源。
要获取用于 DEF APNDSTR 的现有 "STR#" 资源的句柄,您可以使用各种资源管理器函数,例如 GETRESOURCE:http://developer.apple.com/documentation/mac/MoreToolbox/MoreToolbox-50.html.
永远不要对可清除资源使用 DEF APNDSTR,除非您首先调用 FN HNOPURGE (str#handle&) (http://developer.apple.com/documentation/mac/Memory/Memory-91.html) 来(暂时)使其不可清除。如果您认为该资源可能在您有机会调用 FN HNOPURGE 之前就被清除了,那么您还应该 CALL LOADRESOURCE (str#handle&) (http://developer.apple.com/documentation/mac/MoreToolbox/MoreToolbox-56.html) 以确保它被加载到内存中。
如果您使用 DEF APNDSTR 更新现有的 "STR#" 资源,那么在使用 DEF APNDSTR 之后,使用 CALL CHANGEDRESOURCE (str#handle&) (http://developer.apple.com/documentation/mac/MoreToolbox/MoreToolbox-63.html),以便在资源文件关闭或更新时将您的更改写入磁盘。
如果堆内存非常低或非常碎片化,则 DEF APNDSTR 可能会导致系统错误。您可以定期使用 MEM(_maxAvail) 函数来整理内存。
STR#; DEF REMOVESTR; “资源管理器”章节 (http://developer.apple.com/documentation/mac/MoreToolbox/MoreToolbox-9.html) 在 Inside Macintosh 中:http://developer.apple.com/documentation/macos8/mac8.html,More Macintosh Toolbox:http://developer.apple.com/documentation/mac/MoreToolbox/MoreToolbox-2.html.