通過const引用傳遞對象意味着我們不能修改它的任何成員。但假設該對象包含一個vector<string>
成員。我們如何編寫const方法來讀取vector<string>
成員的內容,並假定還需要vector<string>::iterator
成員,並且必須在每次讀取之後更新以指向該向量中的下一個元素?如何修改/更新由const引用傳遞的對象的內部狀態
這是可能的,還是在這種情況下有另一種方法?也就是說,不要修改const引用對象傳遞的內容,但對象應該能夠更新它的內部狀態(即要讀取的向量中的下一個元素)。
您可以用'矢量 :: const_iterator'來遍歷向量呢? –
simonc
我想修改迭代器,它是通過const引用傳遞的對象的成員(即我無法修改它)。正如其他人所指出的那樣,聲明該成員是可變的,似乎是答案。 – mihai
如果你想修改它,爲什麼你把它作爲'const&'來傳遞? –