簡體   English   中英

QVector和std :: vector的大小方法

[英]Size method of QVector and std::vector

QVector的size方法是int類型,但std::vector的相同方法是unsigned 為什么會有區別。 是不是無符號類型是保持大小的正確方法,因為它不能是否定的?

因為他們在1999年進行了討論,並得出結論: int是一個更好的選擇,因為返回uint的函數數量相對較少,並且他們對警告感到不滿:

 Subject: Re: killing uint as return type in Qt. From: Alex Sandro Queiroz e Silva <asandro@xxxxxxxxxxxxx> Date: Wed, 17 Mar 1999 15:29:37 -0300 (EST) Cc: qt-interest@xxxxxxxx To: Arnt Gulbrandsen <arnt@xxxxxxxx> 

1999年3月17日,Arnt Gulbrandsen寫道:

Qt中大約0.15%的函數返回uint。 其中大多數稱為QMumble :: size()或QMumble :: count()。 這些函數永遠不需要返回負數,所以實際上,uint是他們返回的正確類型。

但至少對我來說這是一件令人討厭的事。 我一直將它們與整數進行比較,將它們放在可以包含負數的變量中,依此類推。 我寫過

  if ( blah->count() < i ) 

並且已經有很多次編譯警告。

所以我正在考慮在Qt 2.0中將這些函數的返回類型更改為int。 你怎么看? 你是用戶 - 你想要正確性和完全向后兼容性還是你更喜歡更方便?

--Arnt

我覺得這次便利性更好,我們現在都可以從這個方法中得到一些結果,所以...

- Alex asandro@lcg.dc.ufc.br

暫無
暫無

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

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