目前我有拿着到所有連接到特定的房間房間引用一個向量:C++ - 如何將多個值插入向量中,每個值都有不同的索引?
rooms.at(1).connectedRooms = { &rooms.at(2), &rooms.at(3), &rooms.at(4), &rooms.at(5)};
不過,我想用我的枚舉爲指標,而不是一個整數,所以不是rooms.at(1).connectedRooms.at(0)
我會用rooms.at(1).connectedRooms.at(NORTH)
這使得它更有意義,並且還允許在開關語句中更容易和易讀地使用它。
枚舉看起來像
enum directions { NORTH, EAST, SOUTH, WEST};
有沒有辦法做到這一點在同一行,例如(此代碼不能正常工作,但它是我想要做什麼):
rooms.at(1).connectedRooms[NORTH, EAST, SOUTH, WEST] = {&rooms.at(2), &rooms.at(3), &rooms.at(4), &rooms.at(5)};
,而不是更長的時間
rooms.at(1).connectedRooms[NORTH] = &rooms.at(2);
rooms.at(1).connectedRooms[EAST] = &rooms.at(3);
rooms.at(1).connectedRooms[SOUTH] = &rooms.at(4);
rooms.at(1).connectedRooms[WEST] = &rooms.at(5);
感謝
你可以使用循環或寫一個幫助函數。 – DigitalNinja