普通のC++で製作していたものにGUIつけようと思って,Visual Studioで C++/CLI を用いて移植をしていたときに起きたエラーです.
ググっても情報量が少ない,状況も解決策もバラバラ,そもそもエラー説明が役に立たないのでかなり苦労しました.
私の場合の解決策は,自作クラスAを引数にする関数があり,その関数が参照渡しにすることでした.
つまり
class A
{
}
class B
{
void calc(A x, A y);
}
になっていたのを
class A
{
}
class B
{
void calc(A &x, A &y)
}
にしたら直りました.
また,私の場合はEigenを class A
で使用していたため,
class A { void add(Eigen::Vector3f s, Eigen::Vector3f t) } を class A { void add(Eigen::Vector3f &s, Eigen::Vector3f &t) }
にする必要がありました.