Предупреждения - это просто сообщения от компилятора, предупреждающие программиста (вас) о том, что что-то подозрительно.В общем случае преобразование из char *
в float *
может вызвать проблемы с выравниванием, отсюда и предупреждение.
Если вы знаете, что в вашем случае использования проблемы с выравниванием не возникнет, и строгий псевдоним будеттоже не проблема, тогда вы можете спокойно проигнорировать предупреждение.Не забудьте оставить комментарий в коде для будущих сопровождающих, чтобы не беспокоиться об этом предупреждении в этом месте.
После прочтения последней строки вашего вопроса я бы не стал полагаться на использование буфера данных vector<char>
для этого использования.По крайней мере, вы должны использовать vector<float>
: по определению он может содержать числа с плавающей точкой, и всегда безопасно получить доступ к любому типу (здесь массив или числа с плавающей точкой) как массив символов.