3
は、私は私が宣言したクラスのベクトルでは、次のエラーconst変数と非const変数を操作するoperator/overload関数の宣言方法は?
Invalid operands to binary expression ('const Vector' and 'double')
を取得していますBRDFのreturn文に対応したラインで、次のコード
#pragma once
#include "material.h"
#include "../Math/vector.h"
#include <cmath>
class LambertianMaterial : public Material
{
public:
LambertianMaterial(Vector rho);
Vector brdf(Vector wi) const
{
return mRho/M_PI; // Error here
}
private:
Vector mRho;
};
を持ってoperator/
Vector operator/(const float a);
私はこのメソッドを再定義することを考えていました。
friend Vector operator/(const Vector& v, const float& a);
これは良い方法ですか、またはオペレータの現在の定義がconst Vector
のケースを説明する方法がありますか?
あなたは完全に正しいです、私はそれを重視しました。 – BRabbit27