Я использую библиотеку GNU gsl для операций линейной алгебры над векторами и матрицами в C ++ (vs2005). Я ввожу это в старый код, пытаясь сохранить API моего класса Vector
нетронутым.
Помимо множества функциональных возможностей класс Vector
содержит член
protected:
gsl_vector *vec;
Мой конструктор по умолчанию вызывает:
inline Vector::Vector ()
{
vec = gsl_vector_calloc(3);
}
Это ужасно медленно, поскольку calloc
/ alloc
является реализацией new
. Можно ли каким-либо образом разместить это в стеке?
Мой Vector
всегда имеет одинаковый размер, однако число Vectors
сильно варьируется при запуске приложения.
Любая помощь приветствуется, большое спасибо.