不是 'std::vector<_Ty> 的成员

is not a member of 'std::vector<_Ty>

本文关键字:gt Ty 成员 vector std 不是 lt      更新时间:2023-10-16

这个函数有问题,我不能做一个compail

TPacketGCShopStart* p = (TPacketGCShopStart*)vecBuffer.data();

Error 1 error C2039: 'data' : is not a member of 'std::vector<_Ty>' e:sourceclinetUserInterfacePythonNetworkStreamPhaseGame.cpp 1691 UserInterface

由于您使用的 Visual Studio 及其C++编译器版本不支持 C++11 标准(其中添加了data函数(,因此您有两种解决方案:

  1. 更新到更高版本的 Visual Studio。
  2. 请记住,std::vector处理的内存是连续的,就像数组一样,然后您可以使用相同的语法获取指向第一个元素的指针:TPacketGCShopStart* p = &vecBuffer[0]

我宁愿推荐第一种解决方案,即更新IDE,因为VS2008既不受支持,也不支持许多现代C++功能,这些功能使C++程序员的生活更加轻松。