ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

【C++】记录size of std::vector的巧妙坑

【C++】记录size of std::vector的巧妙坑 定义std::vectorfloatvertices{0.0f,0.5f,0.0f,// x,y,z of first point.0.5f,-0.5f,0.0f,// x,y,z of second point.-0.5f,-0.5f,0.0f,// x,y,z of third point.}求vertices所存储的数据的字节数我之前以为答案是sizeof(vertices) sizeof(float[9]) 9 * sizeof(float) 36至少起码sizeof(vertices.data()) 36吧然后我才反应过来sizeof(vertices) 32是std::vectorfloat对象本身所占的字节数sizeof(vertices.data()) 8是指针大小。64 位系统为 8 字节32 位系统为 4 字节。所以要求数据字节数应该是vertices.size()* sizeof(float)。
返回列表