Функция друга в CUDA C ++C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Функция друга в CUDA C ++

Сообщение Anonymous »

Я работаю над проблемой, когда классы А и В объявляются в Test0 Test0, а функция друга F класса A объявлена ​​в Test1 Test1. Функция F принимает ссылку на объект класса B в качестве его параметра. Вот упрощенный пример. < /P>
namespace test0 {
class B;
}

namespace test1 {
void f(test0::B& b);
}

namespace test0 {
class A {
friend void test1::f(test0::B& b);
};
}
< /code>
Код работает с G ++. Но NVCC дает следующую ошибку компиляции. < /P>
a.cu:11:22: error: ‘B’ has not been declared
friend void test1::f(test0::B& b);
^
a.cu:11:27: error: ‘void test1::f(int&)’ should have been declared inside ‘test1’
friend void test1::f(test0::B& b);
^
< /code>
Не могли бы вы помочь мне выяснить, в чем проблема? Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/505 ... -in-cuda-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»