Нет, это небезопасно , потому что §23.3.6.4 ИСО / МЭК 14882: 2014 гласит
векторных данных ... Возвращает: Указатель такой, что [data (), data () + size ()) - допустимый диапазон.
Таким образом, по стандарту все, что находится за пределами size()
, не определено, что означает так называемое неопределенное поведение ,что, как все подтвердят, является чем-то очень небезопасным.
Если быть честным, обычно ничего плохого не случится, но обычно это очень слабое, что означает, что происходят другие компилятор, операционная система и бум, иВы не можете сказать это.И чтобы быть полным, есть несколько реализаций, в которых это может произойти сбой, я думаю, например, когда вы компилируете с обработкой адресов.Только не делай этого.