La convención estándar parece ser dar a los archivos de código fuente CUDA una extensión .cu
, para distinguirlos de los archivos C con una extensión .c
. ¿Cuál es la convención correspondiente para los archivos de encabezado específicos de CUDA? ¿Hay alguno?Los archivos fuente CUDA obtienen una extensión .cu. ¿Qué obtienen los archivos de cabecera?
Respuesta
Algunas personas (incluido el SDK de CUDA) usan .cuh
para archivos de encabezado CUDA, y si incluye el código del dispositivo en el encabezado, quizás esto pueda ayudar. Sin embargo, realmente no hay un significado especial asociado a la extensión del archivo de encabezado (a diferencia del archivo fuente donde determina qué compilador usar) así que personalmente me quedo con .h
.
No, solo use .h
para archivos de encabezado. Los archivos fuente de CUDA tienen un sufijo diferente para facilitar el aseguramiento de que los diversos archivos de origen compilados se compilan con el compilador correcto (piense en las reglas de makefile).
En mi opinión, es una buena costumbre usar extensiones diferentes para los encabezados que tienen código específico de CUDA. De esta forma, puede evitar que las personas intenten incluirlos en archivos normales de C++. – shinjin
- 1. ctags + taglist para archivos .cu (CUDA)
- 2. Después de cambiar el espacio de nombres en los archivos UserControl, ... los archivos g.cs obtienen errores
- 3. ¿Los argumentos de constructor obtienen GC'ed?
- 4. ¿Cómo obtienen los datos de los mashups de craigslist?
- 5. ¿Cómo se obtienen los iconos de shell32.dll?
- 6. seleccione el cambio, obtienen los datos de valor de atributo
- 7. ¿Cómo se obtienen los datos de la RAM?
- 8. ¿Cómo se obtienen los hijos de un widget en Qt?
- 9. ¿Cómo se obtienen los servidores DNS actuales para Android?
- 10. cuál es la diferencia entre los archivos de cabecera c (.h) y los archivos de cabecera C++ (.hpp)
- 11. ¿por qué los archivos de encabezado STL no tienen extensión?
- 12. ¿Por qué algunos proyectos eligen la extensión para los archivos fuente .cc en C++?
- 13. ¿Cómo obtienen los motores de búsqueda de viajes y los agregadores sus datos de origen?
- 14. poniendo definiciones de funciones en los archivos de cabecera
- 15. Cualquier diferencia fundamental entre los archivos de origen y de cabecera en C?
- 16. ¿Dónde están los archivos de cabecera C en Windows?
- 17. Uso de PowerShell para agregar una extensión a los archivos
- 18. ¿Cómo diferenciar solo los archivos fuente?
- 19. MSBUILD: Obtienen el directorio actual de objetivos
- 20. ¿Qué son los archivos .idb de MonoDevelop?
- 21. ¿Cómo se obtienen los encabezados predeterminados en una solicitud de urllib2?
- 22. ¿Cómo se elevan y obtienen los derechos de administración bajo demanda en una aplicación .NET?
- 23. ¿Cómo hacer que .gitignore ignore los archivos compilados sin extensión?
- 24. ¿Cómo funcionan los archivos de encabezado y fuente en C?
- 25. Obtienen el directorio base del script actual
- 26. ¿Qué son los archivos NDF?
- 27. ¿Qué son los archivos .S?
- 28. Obtienen el directorio actual en asp.net mvc
- 29. Visual Studio: ¿Imprimir todos los archivos fuente en una solución?
- 30. ¿Por qué existen los archivos vcxproj.filters?
Gracias! En algunos casos, tengo un código de dispositivo en el encabezado, y me gustaría dejarlo claro en la extensión de archivo para que las personas no lo incluyan en archivos fuente que no sean CUDA, por lo que .cuh parece la respuesta correcta para eso . (Este también es un entorno que distingue los encabezados .hpp de C++ de los C .h, por lo que hay un precedente local). De lo contrario, sí, .h tiene sentido. –
Cuando trabajas con la versión de Linux de Eclipse, es muy importante qué extensión tiene el archivo de inclusión. Con una extensión '.h', Eclipse no formatea correctamente el contenido. Tuve este problema casi 2 años hasta que me di cuenta de que puede deberse a una extensión incorrecta. Al cambiar la extensión a '.cuh' se solucionó mi problema y ahora Eclipse finalmente formatea correctamente el archivo de inclusión. Hasta el señor Tom :-) –