最近碰到这个错误,错误C2039"_Get_container": 不是 "std::stack<int,std::deque<int,std::allocator<int>>>" 的成员之前的一个老工程的备份,原工程用的vs2010,而现在升级到2019,结果提示找不到函数,猜想是函数弃用造成的。
于是定位到错误位置:
新版stl实现的stack已经改变了写法,本来想要修改一下子不知道用什么替代方案,尝试了一会儿发现并没有找到直接的替代函数。
于是果断滚回旧版,使用vs2015打开尝试,发现可以正常编译运行!
因为实在是懒得装2010了,但是如果2015仍然无法正常打开的话,就只能装2010了!
主要是在网上搜索了一阵,竟然没发现有人遇到这个错误,就连_Get_container()这个函数的用法介绍都是极少的,所以特此写下这篇文章,一方面做个纪念,另一方面如果有人遇到相同的错误,可以试试使用旧版本的vs重新编译工程。