因此,在显示的代码的下一行,我有IntelliSense警告:“无成员可用”。怎么了?在正常情况下,似乎会有一些选项,例如“分配”,“取消分配”等。
std::allocator_traits<std::allocator<T>>::
实际上,std::allocator_traits<Allocator<T>>::
也不起作用。但是可以在这种情况下使用(就像template <
typename T,
template <typename Y> class Allocator = std::allocator> // use std::allocator as default allocator
std::unique_ptr<T, std::function<void(T*)>> move_with_allocator(
T&& stack_object, Allocator<T> allocator = Allocator<T>())
{
using AllocTraits = std::allocator_traits<Allocator<T>>;
std::allocator_traits<std::allocator<T>>::allocate(allocator, 1); //WORKING FINE HERE
一样):
Visual Studio 2019