в C (++) я могу сделать в заголовочном файле myFLOAT.h
typedef myFLOAT double;
// typedef myFLOAT BigFloat; // with the correct lib
Тогда я могу написать код, основанный на типе myFLOAT
и очень легко переключаться на код между double и BigFloat
просто раскомментируйте / прокомментируйте соответствующую строку
в заголовочном файле.
Как мне сделать то же самое в Джулии?
Я пытался
abstract type myFLOAT <: Float64 end
#abstract type myFLOAT <: BigFloat end
но я получаю
ERROR: invalid subtyping in definition of myFLOAT
Я добавляю следующий комментарий после ответа от @ clbieganek
Мой код симуляции обычно выглядит как
init = initSimulation(args);
result = doSimulation(init);
Plotting(result);
Я согласен, что я могу / должен использовать AbstractFloat "везде" в doSimulation ().
Но с
const myFLOAT = Float64 # thanks
Я хочу гарантировать, что каждый myFLOAT в 'struct init' является Float64 или BigFloat в зависимости от варианта использования. Таким образом, doSimulation (init) выберет
правильный тип поплавка.