[英]Debug Assertion Failed map/set iterator not dereferencable
我有我的地图std::map<const char*, int> uniforms;
当我尝试使用uniforms.find(name)->second
查找数据时,出现错误提示。 我已经检查了存储在调试模式下的数据,并且所有数据都正确地存在,并且可以使用find函数访问其中的大多数数据,但是当我尝试访问directionalLight.base.color
我得到了错误。 就像我说的那样,它们的拼写正确并且处于调试模式,但是我得到了错误。 它是字符串中的点吗?
您可能正在通过地图的结尾,因此在取消引用之前,应检查其是否有效
auto it = uniforms.find(name) ; // or std::map<const char*, int>::iterator it ;
if ( it != uniforms.end() )
{
// Now use it->second
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.