gpt4 book ai didi

templates - 如何明确引用此模板成员?

转载 作者:行者123 更新时间:2023-12-03 06:56:59 25 4
gpt4 key购买 nike

模板成员may be implicitly referred to如果他们是模板的唯一成员,并且他们共享模板的名称:

template foo(int number)
{
immutable int foo = number;
}

void main()
{
writeln(foo!(123)); // Okay.
}

但是如果我想明确引用该成员怎么办?

writeln(foo!(123).foo); // Error: attempts to access the foo property of int.

我没有充分的理由这样做,但我觉得这一定是可能的。

最佳答案

同名模板在使用时会替换为其值。因此,就编译器而言,编写

writeln(foo!(123).foo);

与书写基本相同

writeln(123.foo);

这是不合法的。该行会导致与您遇到的错误基本相同的错误。您不应该访问同名模板的成员。它们是故意不透明的。

关于templates - 如何明确引用此模板成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9952871/

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