This dress would be perfect for a high school student. Not sure about it for an adult on a cruise. The XL fits like a junior small. It will not hold anything over a B cup. The fabric is swimsuit fabric. Nothing fancy. It has moderate stretch like a bathing suit, but becomes translucent the more it stretches. I would recommend sizing way up on this garment if you are an adult woman and I would not recommend buying it at all, if you are over a B cup.