我下面這個教程: http://simpleopencl.blogspot.com.br/2013/06/tutorial-simple-start-with-opencl-and-c.html括號錯誤開放C1代碼 - 用C++
,我得到了3個錯誤:
ERROR 1) - 解決
cl::Context context({default_device}); //original code
我剛剛起飛大括號,沒關係。
錯誤2) - 解決
if(program.build(default_device)!=CL_SUCCESS){
我只是取代 「default_device」 爲 「all_devices」 和這沒關係。
錯誤3) - 不解決
sources.push_back({kernel_code.c_str(),kernel_code.length()});
我不知道該怎麼辦。 Visual Studio是指向此錯誤消息: 「智能感知:預計表達式」
這是我說的那條代碼:
cl::Device default_device = all_devices[0];
std::cout<< "Using device: "<<default_device.getInfo<CL_DEVICE_NAME>()<<"\n";
cl::Context context(default_device);
cl::Program::Sources sources;
// kernel calculates for each element C=A+B
std::string kernel_code=
"void kernel simple_add(global const int* A, global const int* B, global int* C)"
"{"
"C[get_global_id(0)]=A[get_global_id(0)]+B[get_global_id(0)];"
"}";
sources.push_back({kernel_code.c_str(),kernel_code.length()});
cl::Program program(context,sources);
if(program.build(all_devices)!=CL_SUCCESS){
std::cout<<" Error building: "<<program.getBuildInfo<CL_PROGRAM_BUILD_LOG>(default_device)<<"\n";
exit(1);
}
工作,謝謝! –