gpt4 book ai didi

C++ IDE 不会推断/自动完成对模板类中 std::array 下标表达式的成员访问

转载 作者:行者123 更新时间:2023-12-01 14:49:04 26 4
gpt4 key购买 nike

class A {
class B {
public:
int gwe = 0;
};

array<B, 3> arr;

public:
A() {
arr[0].gwe; // When starting to type 'g', IDE will suggest autocompletion for 'gwe'
}
};

现在,如果你把它放在上面: template<typename T>尝试访问数组元素的成员时,IDE 不会自动完成。
让它成为 Xcode,CLion,我还没有尝试过 VS,但我相信它也会复制这种行为。
在将泛型与其他语言(如 C#、Java 或 Swift)一起使用之前,我没有经历过这种情况。
那么为什么这必须发生在 C++ 上呢?

最佳答案

正确解析 C++ 是一个极其复杂且耗时的问题。

如果 IDE 能够完美地完成它,它会花费与编译应用程序一样多的时间,并且您会因为 IDE 没有响应而烦恼。

因此,为了响应迅速,IDE 会在有限的时间内进行有限的解析,这意味着它们并不总是正确的。

自动完成和类似功能可以提供帮助/帮助,但它们不是最终的真相——不要指望它们是。

关于C++ IDE 不会推断/自动完成对模板类中 std::array 下标表达式的成员访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59545304/

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