Dive into a detailed C++ journey that beautifully encapsulates the intricacies of urban infrastructure, focusing on roads and bridges between two primary cities - A and B. 🌆
Offer a robust C++ implementation of an abstract data type which houses intricate details about roads and bridges as meticulously detailed below.
Given two prominent cities, A & B, there exists 'm' parallel roads connecting them, ensuring no intersections and uniquely numbered from 1 to m. As time progresses, bridges begin to manifest on these roads. Here's the catch - there's no limit to the number of bridges a road can support, and each bridge can possess any positive real number as its height. 🌉🛤️
Input: Initially, the program anticipates the number of roads 'm' bridging cities A and B. Subsequently, the count of operations 'n' to be undertaken will be fed. For each operation, the program will intake details of the operation along with parameters (as and when necessary).