それほど大きな問題ではありませんが、クラスのフレンド関数に関しては、IntelliSenseが台無しになっているのではないかと思います。
ostreamとistream(<<、>>)にオーバーロードされた演算子を使用するクラスがあり、クラス内でフレンド関数としてフラグが付けられています。したがって、理論的には、クラスのプライベートメンバーにアクセスできる必要があります。プログラムは正常にコンパイルおよび実行され、エラーは発生しませんが、コードを記述し続けている間、IntelliSenseは、メンバー関数が関数にアクセスできないことを常に報告しています。まだコンパイルされますが、これがIntelliSenseの問題なのか、それとも私の側の問題なのか疑問に思っています。たまたま実行されているのは幸運なことですか?
friend std::ostream & operator <<(std::ostream &, const Rational &);
friend std::istream & operator >>(std::istream &, Rational &);
std::ostream & operator <<(std::ostream & outs, const Rational & source)
{
outs << source.itsNum << '/' << source.itsDen;
return outs;
}
std::istream & operator >>(std::istream & ins, Rational & target)
{
ins >> target.itsNum >> target.itsDen;
return ins;
}