如何以 typedef 方式重新定义 MPI_FLOAT、MPI_DOUBLE
How can you redefine MPI_FLOAT, MPI_DOUBLE in a typedef way
我想按以下方式做 typedef MPI_FLOAT/MPI_DOUBLE
#ifdef DOUBLE_PRECISION
typedef MPI_DOUBLE MPI_REAL_MYOWN;
#else
typedef MPI_FLOAT MPI_REAL_MYOWN;
#endif
我正在使用 mpich 的包装器 mpicxx。我的想法是,我现在可以在我的 MPI API 中使用 MPI_REAL_MYOWN
,而不必担心我是以双精度还是单精度编译的。
编译时出现错误提示
error: expected ')'
typedef MPI_FLOAT MPI_REAL_MYOWN;
MPI_FLOAT
和 MPI_DOUBLE
是 values of type MPI_Datatype
。如果您愿意,只需创建该类型的变量即可。
#ifdef DOUBLE_PRECISION
const MPI_Datatype MPI_REAL_MYOWN = MPI_DOUBLE;
#else
const MPI_Datatype MPI_REAL_MYOWN = MPI_FLOAT;
#endif
我想按以下方式做 typedef MPI_FLOAT/MPI_DOUBLE
#ifdef DOUBLE_PRECISION
typedef MPI_DOUBLE MPI_REAL_MYOWN;
#else
typedef MPI_FLOAT MPI_REAL_MYOWN;
#endif
我正在使用 mpich 的包装器 mpicxx。我的想法是,我现在可以在我的 MPI API 中使用 MPI_REAL_MYOWN
,而不必担心我是以双精度还是单精度编译的。
编译时出现错误提示
error: expected ')'
typedef MPI_FLOAT MPI_REAL_MYOWN;
MPI_FLOAT
和 MPI_DOUBLE
是 values of type MPI_Datatype
。如果您愿意,只需创建该类型的变量即可。
#ifdef DOUBLE_PRECISION
const MPI_Datatype MPI_REAL_MYOWN = MPI_DOUBLE;
#else
const MPI_Datatype MPI_REAL_MYOWN = MPI_FLOAT;
#endif