在cuda中我们可以创建扩展名为.cuh的头文件,我们可以从任何地方调用这些函数,
__device__ void doSomething()
{
....................
}
void doSomthingOnHost()
{
....................
}
这两个功能都是公开的。如何将主机功能设为私有?
答案 0 :(得分:5)
我发现最适合我的是
要在此方案中将主机功能设为私有,请不要在标题中放置原型...如果你问我,这是一个非常简洁的方案。
答案 1 :(得分:0)
严格来说,没有办法在C ++中创建一个私有的自由函数 - 任何可以看到函数签名的客户端都可以调用它。
相反,您可以使doSomethingOnHost
成为某个类的私有静态成员函数:
class my_class
{
private:
static void doSomethingOnHost(); // only my_class or friends of my_class may use this function
};