我被困在调用 MKL Blas 函数cblas_zgemv
有两个系数 alpha 和 beta 是复数:
alpha
REAL for sgemv
DOUBLE PRECISION for dgemv
COMPLEX for cgemv, scgemv
DOUBLE COMPLEX for zgemv, dzgemv
. 但是在函数的定义中:
void cblas_zgemv (const CBLAS_ORDER order, const CBLAS_TRANSPOSE TransA,
const MKL_INT M, const MKL_INT N, const void *alpha, const void *A,
const MKL_INT lda, const void *X, const MKL_INT incX, const void *beta,
void *Y, const MKL_INT incY);
我试图设置 alpha = complex(1.0,0) 但这会给我一个错误:
error: no suitable conversion function from "complex<double>" to "const void *" exists
我能做些什么?我不明白这个 const void* 是什么......