我可以检查给定指针是否指向由其边界指定的数组中的对象?
template <typename T>
bool points_within_array(T* p, T* begin, T* end)
{
return begin <= p && p < end;
}
Run Code Online (Sandbox Code Playgroud)
或者,如果p指向数组范围之外的点,指针比较是否会调用未定义的行为?在那种情况下,我该如何解决这个问题?它是否适用于void指针?还是不可能解决?