【问题标题】:Information about piece of code concerning Brackets and Templates关于括号和模板的一段代码的信息
【发布时间】:2016-02-18 03:28:08
【问题描述】:

这是部分代码:

    tmp<scalarField> nu(const label patchi) const
    {
        return nu_.boundaryField()[patchi];
    }

我不太明白函数括号后括号的含义。这是正确的语法吗?它的实际含义是什么?

第二个问题是关于这个“tmp”的。是编写诱惑的标准语法还是可以选择所有内容并编写例如 hallo.scalarField> 或 example.scalarField>。

提前致谢。

【问题讨论】:

  • 语法有效。它的含义取决于boundaryField() 返回的内容。
  • 这是否意味着boundaryField() 将一个数组作为输入?
  • 首先,每个问题一个问题。其次,您是在问模板是否必须命名为“tmp”还是tmp&lt;scalarField&gt;的语法?
  • 我可以例如以某种方式选择并写“hallo”还是应该总是在前面加上“tmp”
  • 我认为这里的“nu”是函数的名称... tmp nu(const label patchi) const ,但不是“tmp”

标签: c++ arrays function templates brackets


【解决方案1】:

如果boundaryField() 返回支持[] 语法的东西,那是有效的。例如,如果foo 是一个返回对数组的引用的函数,则foo()[0] 将获得该数组的第一个元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-04
    • 2020-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多