UE4 错误解决:"[SM5] error X4555: cannot use casts on l-values" - 结构体类型函数参数类型转换问题
根据错误信息和提供的代码片段,可以推断出问题可能出现在对结构体类型的函数中进行类型转换操作时。错误代码"X4555: cannot use casts on l-values"表示不能在l-values上使用强制类型转换。\n\n在UE4中,结构体类型的函数参数是按值传递的,也就是说函数内部的参数是函数调用时传递的参数的副本。因此,不能直接对传递进来的参数进行类型转换,因为它是一个临时的右值(r-value),而不是一个可以修改的左值(l-value)。\n\n为了解决这个问题,你可以将参数声明为const引用,这样就可以在函数内部进行类型转换操作了。修改代码如下所示:\n\ncpp\n结构体类型 函数名(const float3& p) { …… }\n\n\n通过将参数声明为const引用,可以确保函数内部不会修改传递进来的参数,并且可以在函数内部进行类型转换操作。
原文地址: https://www.cveoy.top/t/topic/pTxx 著作权归作者所有。请勿转载和采集!