簡體   English   中英

我的代碼覆蓋自身時遇到問題,我不知道為什么

[英]Having trouble with my code overwriting itself and I am not sure why

在下面的代碼中,我可以更改計數數量 newNodePtr->setCount(amount); 任何值,它會保持改變。 但我最初試圖將它設置為等於 1。 然后如果它再次發生,我將轉到 else 語句並將我的鏈表值保留在該位置,但將計數更改為 +1。

template<class ItemType>
bool LinkedBag<ItemType>::add(const ItemType& newEntry)
{

    Node<ItemType> *newNodePtr = new Node<ItemType>();
    int amount = 0;
        if (getFrequencyOf(newEntry)<1)
        {
            newNodePtr->setItem(newEntry);
            newNodePtr->setNext(headPtr);
            itemCount++;
            amount++;
            newNodePtr->setCount(amount);
            headPtr = newNodePtr;

        }
        else
        {
            const int freqAmount = getFrequencyOf(newEntry);
            newNodePtr->setItem(newEntry);
            itemCount++;
            newNodePtr->setCount(freqAmount+1);
        }

    return true;
}  // end add

在您的 else 塊中,您正在為新創建的項目設置計數。 不在列表中的現有項目上。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM