データの受け渡しを容易にするために、ホスト コードとデバイス コードの両方で使用するクラスがあります。このクラスには、データを操作するいくつかのメソッドがあります。簡単な例は次のとおりです。
struct Vector {
float x, y, z;
__host__ __device__ Vector(float _x, float _y, float _z) {
//...
}
};
このクラスをヘッダー ファイルに実装すると、問題なく動作し、nvcc は満足しています。ただし、ソース ファイルにコンストラクターを実装しようとすると、nvcc はコンストラクターがインライン化されていないと文句を言います。これをバイパスする方法はありますか、それともコンパイラの制限にすぎませんか?