gpt4 book ai didi

c++ - 分配器 : "No members available". 我该如何解决?

转载 作者:行者123 更新时间:2023-11-28 04:08:30 26 4
gpt4 key购买 nike

因此,在所提供代码的下一行,我有 IntelliSense 警告:“没有可用的成员”。怎么了?在正常情况下,似乎有选项,如“分配”、“解除分配”等。

namespace MyLib
{
template <typename T,
template <typename Y> class Allocator = std::allocator>
class Vector
{
private:
std::size_t capacityV;
std::size_t sizeV;
T* arr;
public:
typedef Allocator<T> AllocatorType;
typedef Vector<T, Allocator> VectorType;
template<typename T>
using AllocTraits = std::allocator_traits<Allocator<T>>;

std::allocator_traits<Allocator<T>>:: //HERE!

实际上,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

最佳答案

我怀疑你想要Template Intellisense .如果 Intellisense 知道可能的模板参数,它可以提供更好的提示。

关于c++ - 分配器 : "No members available". 我该如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58287496/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com