0

我不知道如何在 x86 中访问 stl 向量。我试图这样做,但我有一些错误。

mov ebx, stl_vector 
mov eax, [ebx] ;Here I want to store the first element of the vector
mov edx, [ebx + 4] ; I want to store the second element of the vector

我想用 SSE 语言做同样的事情。

先感谢您!

4

1 回答 1

4

stl 向量是对象。除非您知道确切的班级布局,否则您无法直接访问它们。您可能应该将一个指向数组的指针和一个大小分别传递给您的汇编函数,例如asm(vector.data(), vector.size()),这样编译器就会处理 c++ 的东西。

于 2016-05-02T15:04:28.463 回答