根据https://en.cppreference.com/w/cpp/container/vector/data,如果大小为 0,则不保证底层指针为 nullptr
如果 size() 为 0,则 data() 可能会也可能不会返回空指针。
但这是否适用于没有元素的默认初始化 std::vector ?或者这只是简单地说明如果向量的所有元素都被删除,底层指针可能不会变成 nullptr?
考虑以下行:
std::vector<int> fooArr;
int* fooArrPtr = fooArr.data();
Run Code Online (Sandbox Code Playgroud)
是否保证fooArrPtr等于 nullptr?