我正在做一個代碼從gsl數字庫中的C頭文件轉換爲linux下的D的ubuntu。我想知道宏是什麼:C宏gsl庫代碼轉換爲D
/* 1 */ #define GSL_VAR extern // gsl types.h file
/* 2 */ #define GSL_RANGE_COND(x) (x) // gsl_inline.h file
/* 3 */ #define GSL_FN_EVAL(F,x) (*((F)->function))(x,(F)->params)
做的。
我懷疑GSL_VAR特別是導致我一些問題。其使用的一個例子是
GSL_VAR const gsl_rng_type *gsl_rng_borosh13; //gsl_rng.h
我轉換爲
gsl_rng_borosh13 const(gsl_rng_type)*; // D Code
這是做正確的事嗎?
你能否提供第二個樣本用法?也許從相應的* .c *文件。 –
if(GSL_RANGE_COND(1)){...} // gsl_matrix_complex_double.h –
hmm看起來像一個可能別名的謂詞GSL_RANGE_COND = bool函數(int x) –