我已经看到很久以前使用hlsl/glsl着色器代码完成此操作 - 在源代码文件上使用#include
,该代码将代码粘贴到char*
中,以便在运行时不会发生文件IO。使用#include加载OpenCL代码
如果我是它表示为伪代码,它看起来有点像这样:
#define CLSourceToString(filename) " #include "filename" "
const char* kernel = CLSourceToString("kernel.cl");
现在当然是#define
是行不通的,因为它只会尝试使用这些引号来启动字符串。
这里没有问题。 – dajobe 2009-09-12 16:42:19