В документе tutorial for the boost serialization library говорится, что «библиотека сериализации обнаруживает, когда объект сериализуется, является массивом», и поэтому код bus_stop * stops[10]; ar & stops;
эквивалентен использованию цикла for for(i = 0; i < 10; ++i) { ar & stops[i]; }
.Как повысить библиотеку сбора сериализации?
Как определить библиотеку во время выполнения, на сколько элементов указывает указатель stops
? Или даже, что это фактически массив, а не указатель на один объект? Я еще не смог найти подсказки в исходном коде.
Спасибо!
См., Например, [этот старый вопрос] (http://stackoverflow.com/questions/437150/can-someone-explain-this-template-code-that-gives-me-the-size-of-an-array). –
Переменные на C++ имеют статически известный * тип *, и вы можете писать общий код, который действует по-разному для разных типов. –