Столкнулся со следующей функцией, автор использует её при записи в данных в .vtk файл. Подскажите, что эта функция делает?
template <typename T>
void SwapEnd(T& var)
{
char* varArray = reinterpret_cast<char*>(&var);
for (long i = 0; i < static_cast<long>(sizeof(var) / 2); i++)
std::swap(varArray[sizeof(var) - 1 - i], varArray[i]);
}
Меняет порядок байт в переменной. Только переменная должна быть POD, что, увы, не проверяется - иначе будут неприятности...
Например,
unsigned long L = 0xDEADBEEF;
cout << hex << L << endl;
SwapEnd(L);
cout << hex << L << endl;
выводит
deadbeef
efbeadde
Просто с обычной C-строкой, кстати, тоже будут проблемы... Даже если ее передать как массив - нулевой символ тоже будет участвовать в обмене.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть 2 связанных списка select со значениями от и до, реализованные с помощью select2:
Подскажите что я делаю неправильно и в чем моя ошибка
Как можно сделать такую навигационную панель? ширина может увеличиваться смотря от названия категории
Все приветИнтересует такой вопрос, он наверное более академический:)Можно ли обратится к группе ячеек з разными атрибутами colspan, без добавление...