今まで見たことのないものに出くわしただけです。次のクラスがあるとします。
class foo
{
const bar* get() const;
bar* get();
}
foo のクライアントは、どの get() メソッドを使用するかをどのように決定できますか?
今まで見たことのないものに出くわしただけです。次のクラスがあるとします。
class foo
{
const bar* get() const;
bar* get();
}
foo のクライアントは、どの get() メソッドを使用するかをどのように決定できますか?
nessの他のオーバーロードと同様に、関数が呼び出されるオブジェクトへのアクセス パス (つまり、暗黙的なパラメーターconst
の型) に依存します。this
例:
void bar(foo nc1, foo &nc2, foo *nc3, const foo &c1, const foo *c2) {
// These call the non-const version:
nc1.get();
nc2.get();
nc3->get();
// These call the const version:
c1.get();
c2->get();
}