クラスCから次の意味で生成されるクラスDがあります
class D{
C& _c;
public:
D(C& c):_c(c){}
...
}
この時、const Cクラスから単純には生成できません
一般的にはDはCを非constで受け取る必要がありますが
const Dクラスを作る場合Cはconstで受け取る設計にしてOKなのですが
そうしたい場合どう改造するのがスマートですかね?