оператор openfoam C ++ & amp; переопределение

template<class Type>
tmp<GeometricField<Type, fvPatchField, volMesh>> operator&
(
const fvMatrix<Type>&,
const tmp<GeometricField<Type, fvPatchField, volMesh>>&
);

Может ли кто-нибудь помочь мне понять эту функцию переопределения в OpenFoam? Как мы знаем, оператор& переопределение не должно иметь двух параметров. Итак, я в замешательстве. И кто-нибудь знает, как использовать эту функцию переопределения? Пожалуйста, приведите простой пример, если вы не заняты? Благодарю.

-4

Решение

Как мы знаем, operator& переопределение не должно иметь двух параметров.

Не правда.

Одинарный operator& и двоичный operator& имеют два разных значения.

Одинарный operator& является эквивалентом адрес оператора в то время как двоичный operator& является эквивалентом побитовый оператор И.

По причинам, которые не очевидны для меня, опубликованный код определяет перегрузку двоичного файла. & оператор между fvMatrix<Type> и tmp<GeometricField<Type, fvPatchField, volMesh>>,

Синтаксически говоря, использование будет:

fvMatrix<Type> var1{};
tmp<GeometricField<Type, fvPatchField, volMesh>> var2{};

auto var3 = var1 & var2;
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]