Из-за отрицательных ответов я уточню ответ. Статика определяется вне области видимости класса, поэтому, чтобы просто скомпилировать ее, добавьте строку ниже, чтобы представить свою статику в таблицу символов компилятора:
float float_vector::val[50];
Как отмечали другие люди, это плохой дизайн, и вам не следует писать свой векторный контейнер sudo таким образом. Val будет доступен всем экземплярам вашего класса, поэтому данные будут переопределены, и вы не сможете сохранить размер и емкость. Кроме того, размер фиксирован, так что это не так много делает для того, что предлагает вектор. При этом следует использовать динамическую память для основного хранилища, предпочтительно с использованием RAII, чтобы проверить хороший пример реализации. Проверка «Язык программирования C ++», издание C ++ 11, стр. 375, есть правильный пример векторной реализации.