In order to have the vertices at the ends of your array-elements coincide closely enough to be welded, the array will have to be deformed to the curve.
This GN Group will create an array of your elements along the element X-axis:

This GN Group will deform geometry to a given curve, with its X-axis along it; a limited version of the Curve modifier:

It works by collapsing the mesh in Y and Z onto a curve, with its X stretched along it by the original length of the mesh, starting from length Offset
along the curve. It then 're-inflates' the mesh, mapping the original Y and Z coordinates of the vertices on to the curve's Normal
and (Normal x Tangent)
vectors, at the relevant X.
These groups can be combined into an 'Array along Curve' group:

The result is similar to the use of Array and Curve modifiers, but giving you more access under the bonnet, should you need it.

(Blender 3.0)

Edit:
Since this answer was written, you may want to check out @Kuboå 's method, here, which I think is snappier than this one, and more easily adapted to multiple curves.