確定申請時內存大?。?br />
int size = ceil(log(num) / log(Two));//進制轉換余數有多少位相當于求Log,然后向上取整一位
cout << "內存大小為:"<<size << endl;
Stack<int> *p = new Stack<int>(size);//申請相應大小的內存,避免浪費和不足
int size = ceil(log(num) / log(Two));//進制轉換余數有多少位相當于求Log,然后向上取整一位
cout << "內存大小為:"<<size << endl;
Stack<int> *p = new Stack<int>(size);//申請相應大小的內存,避免浪費和不足
2019-09-28
老師說的很好通俗易懂,感謝老師。這是我整理的代碼 https://xiongyiming.blog.csdn.net/article/details/100828853
2019-09-16
在把類模板中的T * m_pBuffer 從PRIVATE移動至PUBLIC之后,可以用
for(int i=p->StackLen()-1;i>=0;i--)
{
cout<<num[p->m_pBuffer[i]];
}
輸出16進制轉換。 不過更改了類模板
for(int i=p->StackLen()-1;i>=0;i--)
{
cout<<num[p->m_pBuffer[i]];
}
輸出16進制轉換。 不過更改了類模板
2019-07-26
我有更簡單的方法,模板直接用char,壓棧的時候
while (N != 0)
{
int x = N % i;
if (x >= 10)
{ pStack->push('A' + x - 10); }
else
{ pStack->push('0' + x); }
N = N / i;
}
靈感源自之前學過匯編,經常用這一招,想想匯編可以用的話C++應該問題不大,這樣比較簡潔。
while (N != 0)
{
int x = N % i;
if (x >= 10)
{ pStack->push('A' + x - 10); }
else
{ pStack->push('0' + x); }
N = N / i;
}
靈感源自之前學過匯編,經常用這一招,想想匯編可以用的話C++應該問題不大,這樣比較簡潔。
2019-03-17