I saw this sentence when I was reading the second level of the Space configurator in STL source code analysis. I was a bit puzzled, So I thought about it after reading it:
OBJ is followed by a pointer stl_volatile. It should also be a type definition, and define should be included in the program to define it. So it is the pointer ..
Pointer, that is, the address, SO _ my_free_list is an address, and * _ my_free_list points to the variable value of the storage zone where _ my_free_list is the address. The value of _ stl_volatile * _ my_free_list is also an address, * _ stl_volatile * _ my_free_list points to the value of the variable in the storage zone where _ stl_volatile * _ my_free_list is the address _ my_free_list.
For example, use a to replace _ my_free_list, and use B to replace _ stl_volatile * _ my_free_list.
That is, A is an address, B is also an address, and the data stored in the address A is also an address. Simply put, the address is called C, in this case, the bucket where the address C is located stores a variable. * A points to this variable;
The address B is also an address, and the address is an address. The address is not someone else, it is, * B is equal to C (c is the data stored in the address ).
_ OBJ * _ stl_volatile * _ my_free_list