gpt4 book ai didi

c++ - iOS — 确定 Accelerate.framework 在运行时是否可用

转载 作者:可可西里 更新时间:2023-11-01 05:42:44 25 4
gpt4 key购买 nike

有什么方法可以确定 Accelerate.framework 在运行时是否可用 直接从 C 或 C++ 文件?

我发现的条件编码示例似乎都需要 Objective-C 自省(introspection)(例如,respondsToSelector)和/或 Objective-C api(例如,UIDevice 的 systemVersion 成员(member))

最佳答案

通常的技巧是针对框架弱链接,然后检查该框架导出的函数指针的实际可用性。如果框架因不可用而无法链接,则该函数将为 NULL

所以对于 Accelerate.framework 你会做这样的事情:

#include <Accelerate/Accelerate.h>

if (cblas_sdsdot) {
NSLog(@"Yay we got Accelerate.framework");
} else {
NSLog(@"Oh no, no Accelerate.framework");
}

这在 TN2064 - Ensuring Binary Backwards Compatibility 中有描述

关于c++ - iOS — 确定 Accelerate.framework 在运行时是否可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3534934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com