Я думаю, что мой вопрос сводится к: В чем проблема std :: inplace_vector , но вот немного больше подробностей:
У меня есть std :: vector как часть моего синглтона, которое, поскольку он является статичным , должен быть выделена Static Memory во время компиляции. Однако, поскольку вектор, по сути, является динамическим массивом (это может быть не так просто, но в этом случае аналогия работает, так что дайте мне немного свободы), как выделяется память? Сколько памяти выделяется во время компиляции? Что происходит, когда я вставляю больше элементов в вектор и необходимо изменить размер, учитывая, что статическая память уже выделена и ограничена? < /P>
class SingletonClass
{
public:
static SingletonClass& getInstance()
{
static SingletonClass instance;
return instance;
}
std::vector singletonVector;
};
Подробнее здесь: https://stackoverflow.com/questions/797 ... red-static