Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 具有多个版本的Cocoa框架&;在运行时选择版本_C++_Xcode_Cocoa_Typedef_Target - Fatal编程技术网

C++ 具有多个版本的Cocoa框架&;在运行时选择版本

C++ 具有多个版本的Cocoa框架&;在运行时选择版本,c++,xcode,cocoa,typedef,target,C++,Xcode,Cocoa,Typedef,Target,我在XCode中有一个C++代码库,它有两个命令行目标-一个定义USE_DOUBLE宏,另一个不定义,允许代码库有条件地将typedef浮点或双精度转换为自定义数据类型 所以基本上: #if defined(USE_DOUBLE) typedef double MyFloat; #else typedef float MyFloat; #endif 我现在正试图将这个代码库转换成一个框架,在另一个应用程序中使用。框架必须同时包含float和double版本,使用框架的应用程序应该能够“选择”链

我在XCode中有一个C++代码库,它有两个命令行目标-一个定义USE_DOUBLE宏,另一个不定义,允许代码库有条件地将typedef浮点或双精度转换为自定义数据类型

所以基本上:

#if defined(USE_DOUBLE)
typedef double MyFloat;
#else
typedef float MyFloat;
#endif
我现在正试图将这个代码库转换成一个框架,在另一个应用程序中使用。框架必须同时包含float和double版本,使用框架的应用程序应该能够“选择”链接哪个版本


我看过苹果的文档,但他们在多版本框架上的页面并没有真正处理如何处理这种情况

为什么要这样做?由于项目的性质,一些硬件将无法使用双精度运行它(它将使用GPU)。因此,它需要能够支持其中一个/或取决于其运行的位置