Я пытаюсь написать класс-оболочку с элементом данных std :: vector. Как конструктор по умолчанию моего класса должен выглядеть так, что я могу сделать следующее, не выходя из ошибки диапазона:Конструктор для обертки вокруг std :: vector
Wrapper W;
W[0] = value; //overloaded index operator, forwards to the vector
Возможно, конструктор не должен делать ничего, и вместо 'оператор []' должен проверить размер и 'изменить размер()' вектору убедитесь, что 'i' находится в зоне действия (остерегайтесь аннулирования предыдущих ссылок)? В противном случае, это полная догадка, насколько большой вектор должен быть, поэтому никто не может действительно сказать, как должен выглядеть ваш конструктор по умолчанию. – Cornstalks
Извините за опечатку, я имел в виду W [0], а не W [i]. – user2696565
Если все, что вам нужно, это 'W [0]', то конструктор может быть 'Wrapper(): m_vector (1) {}' – Cornstalks