size-type

    0熱度

    2回答

    當我在std::vector<Foo>(或每個具有隨機訪問迭代器的容器)上循環時,我使用無符號整數變量i。如果我想尊重規範,我應該使用std::size_t還是容器本身給出的類型:std::vector<Foo>::size_type? 如果我選擇std::size_t(可讀性原因),我可以肯定的是,在std命名空間的每個容器的每一個實現使用std::size_t爲size_type? 注:我僅使

    0熱度

    2回答

    如果std::string的std::size_type是默認分配的, 21.3.1類模板basic_string的 typedef typename allocator_traits<Allocator>::size_type size_type; 而且std::size_type默認分配是,std::size_t, 20.9.9默認分配 typedef size_t size_type; 而我

    -1熱度

    1回答

    我想要在string中的.點之後的每個char上使用toupper。 我試過這段代碼,但當我啓動程序時,如果我使用+運算符,我得到一個黑屏。 string fulltext = "my name is John. i have a girlfriend. her name is Anna"; string::size_type idx = 0; while ((idx = fulltext.

    12熱度

    3回答

    std::size_t通常用於數組索引和循環計數。根據定義,std::size_t是sizeof運算符的結果的無符號整數類型,以及sizeof...運算符和alignof運算符(自C++ 11起)。它在下面的頭文件中定義: <cstddef> <cstdio> <cstdlib> <cstring> <ctime> <cwchar> 要我取消這些操作符返回的類型是實現定義的。 我希望的是,以避免任

    0熱度

    2回答

    我目前正在爲向量類實現構造函數(我的教授說我們可以省略任何使用分配器的東西)。我用我的教授給我們的參考網站來確定函數的格式:http://www.cplusplus.com/reference/stl/vector/vector/ 我在函數中出現了一些錯誤。錯誤的兩個是: 語法錯誤:標識符「SIZE_TYPE」 「值」:未聲明的標識符 任何想法,爲什麼我會收到這些錯誤?這是我的代碼: explic

    2熱度

    2回答

    據我所知,當s2更大時,s1.size() - s2.size()下溢,因爲它是unsigned的減法。 爲什麼將它們投射到int不會導致整數減法? 爲什麼要鑄造整個事情給我正確的結果?我預計它會評估括號內的內容,然後下溢這會給出一個很大的數字,然後投到int不會有什麼區別。我錯過了什麼? #include <iostream> #include <string> using std::co

    37熱度

    3回答

    這個C++語句的含義是什麼? vector<int>::size_type x; 而且,這裏的範圍操作符::的用法是什麼?換句話說,我們如何用英語閱讀這份聲明? 例如,對於X::x(){...},我們說x()是member function的class X。

    0熱度

    5回答

    在MPLAB IDE是什麼數據類型的大小(int,unsigned int,float,unsigned float,char ...)?

    4熱度

    1回答

    因此,有三個值,一個模數操作可以給你: 然後: -7%5 = 3(數學,其餘> = 0) -7%5 = -2(C++) -7%(爲size_t)5 = 4(C++) 又如: -7%4 = 1(數學,其餘> = 0) -7%4 = -3(C++) -7%(爲size_t)4 = 1(C++) 當左邊的操作數是正數時,所有三種方法之間的答案是相同的。但對於負面價值觀,他們似乎都有自己的方法。在C++中

    1熱度

    2回答

    我在這裏瀏覽了一些關於string::size_type的主題,而且我明白,根據C++標準,這個size_type可以爲所有字符串的使用保證足夠的分配。 我只是覺得很難相信。如果我將C++ Primer第4版的全文寫入字符串,該怎麼辦?或者更糟糕的是,如果我將無限字符放入字符串中呢?我只是不明白它是如何處理的。