&是什么意思?放在声明的最后?

时间:2015-09-29 09:55:17

标签: c++ operator-keyword

首先,感谢您的时间和考虑! 我是一个强大的用户和c ++的新手,我需要你的帮助来理解传递给我的一些编码。我粘贴了最让我困扰的代码的一小部分。

tmp<volScalarField> talpha = thermo.alpha();
const volScalarField& alpha = talpha();
tmp<volScalarField> tkappa = thermo.kappa();
const volScalarField& kappa = tkappa();

volScalarField& h = thermo.he();

const volScalarField& betav = betavSolid[i];

fv::IOoptionList& fvOptions = solidHeatSources[i];

我主要担心的是&#39;&amp;&#39;放在声明的最后,这是什么意思?另外,为什么创建一个tmp字段talpha例如并声明下一个alpha = talpha?为什么不直接将thermo.alpha()分配给alpha?

1 个答案:

答案 0 :(得分:1)

这是一种参考类型。

C ++有三种基本类型:值,指针和引用。引用类型与指针类似,但有两个例外:

  • 引用必须在创建时初始化(通过对值或其他引用的赋值操作),
  • 引用不能更改为引用另一个变量(类似于“const指针”),
  • 引用使用“dot”运算符,类似于struct和classes字段的值,而不是像指针一样使用“箭头”。