Your picture is of a cube, so I assume that's what you're talking about.
You can only share vertices between continuous surfaces. That is, on a sphere, you share all/most of the vertices. On a cube, you must you separate vertices for each face.
Aside from texturing, think of the normals you need for lighting. The normal for each side of a cube should point directly out of it. That means that the vertices' that form that side must all have normals pointing in the same direction. That's a problem for the vertices in the corners, as those vertices must have normals that somehow point in three different directions; clearly impossible. The solution is to just make separate vertices for the corners.
On a sphere you can share the normals/vertices because you want the normal to smoothly interpolate along the surface in order to get a rounded look.
For more complex models, whether or not you can share vertices between two surfaces comes down to whether the "edge" between them is something you distinctly want (it's a hard, pointy edge) or whether the edge is just a necessity of polygonal rendering (it's an edge that's simulating a smooth, rolling surface).
Short version: a cube needs a minimum of 24 vertices, 4 for each face. More if you tessellate.