我有一个带有这个静态转换运算符的模板:
operator Vector2<float>() const
{
return Vector2<float>(x, y);
}
这对我来说意味着如果我转换为浮点数,它将返回该类的浮点变体,即使x
和y
是来自整数变体的整数。但显然不是这样:
作为测试:
Vector2<float>position=static_cast<float>(Vector2<int>(5,5));
我收到编译器错误 *No matching conversion for static_cast from Vector2 to float*。
然而,转换是上面指定的,不是静态转换重载吗?