Skip to content

Commit b101283

Browse files
fix: Unsigned int conversion warnings
1 parent 608a40d commit b101283

File tree

3 files changed

+31
-31
lines changed

3 files changed

+31
-31
lines changed

include/cubpackpp/heap.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@
8585

8686
namespace cubpackpp {
8787
/////////////////////////////////////////////
88-
template <class T, int CAPACITY> class SubHeap : public Set<T> {
88+
template <class T, unsigned int CAPACITY> class SubHeap : public Set<T> {
8989
public:
9090
SubHeap();
9191

include/cubpackpp/heap.tpp

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -25,21 +25,21 @@
2525
namespace cubpackpp {
2626
//////////////////////////////////////////////
2727

28-
template<class T, int CAPACITY>
28+
template<class T, unsigned int CAPACITY>
2929
SubHeap<T, CAPACITY>::SubHeap()
3030
:Set<T>() {
3131
ActiveChild = -1;
3232
LastChild = -1;
3333
}
3434

3535
////////////////////////////////////////////////
36-
template<class T, int CAPACITY>
36+
template<class T, unsigned int CAPACITY>
3737
SubHeap<T, CAPACITY>::~SubHeap() {
3838
Clear();
3939
}
4040

4141
///////////////////////////////////////////////
42-
template<class T, int CAPACITY>
42+
template<class T, unsigned int CAPACITY>
4343
T *
4444
SubHeap<T, CAPACITY>::Get() {
4545
Error(this->Number == 0, "error:get from empty heap");
@@ -48,9 +48,9 @@ namespace cubpackpp {
4848
return Contents[1];
4949
};
5050
T *B = Bottom();
51-
if (LastChild == CAPACITY && Children[ActiveChild]->Saturated()) {
51+
if (LastChild == static_cast<int>(CAPACITY) && Children[ActiveChild]->Saturated()) {
5252
ActiveChild--;
53-
if (ActiveChild < 0) ActiveChild = CAPACITY;
53+
if (ActiveChild < 0) ActiveChild = static_cast<int>(CAPACITY);
5454
};
5555
T *Result = Contents[1];
5656
int Hole = 1;
@@ -84,7 +84,7 @@ namespace cubpackpp {
8484
};
8585
putinhole:
8686
Contents[Hole] = B;
87-
if ((CAPACITY + 1) / 2 <= Hole && Hole <= CAPACITY) {
87+
if ((static_cast<int>(CAPACITY) + 1) / 2 <= Hole && Hole <= static_cast<int>(CAPACITY)) {
8888
First = LeftChild(Hole);
8989
Second = RightChild(Hole);
9090
if (LastChild >= Second) {
@@ -111,15 +111,15 @@ namespace cubpackpp {
111111
}
112112

113113
///////////////////////////////////////////////////
114-
template<class T, int CAPACITY>
114+
template<class T, unsigned int CAPACITY>
115115
T *
116116
SubHeap<T, CAPACITY>::Look() {
117117
Error(this->Number == 0, "Looking at empty heap");
118118
return Contents[1];
119119
}
120120
///////////////////////////////////////////////////
121121

122-
template<class T, int CAPACITY>
122+
template<class T, unsigned int CAPACITY>
123123
T *
124124
SubHeap<T, CAPACITY>::Swap(T *B) {
125125
T *Result = Contents[1];
@@ -154,7 +154,7 @@ namespace cubpackpp {
154154
};
155155
putinhole:
156156
Contents[Hole] = B;
157-
if ((CAPACITY + 1) / 2 <= Hole && Hole <= CAPACITY) {
157+
if ((static_cast<int>(CAPACITY) + 1) / 2 <= Hole && Hole <= static_cast<int>(CAPACITY)) {
158158
First = LeftChild(Hole);
159159
Second = RightChild(Hole);
160160
if (LastChild >= Second) {
@@ -181,22 +181,22 @@ namespace cubpackpp {
181181
}
182182

183183
///////////////////////////////////////////////////
184-
template<class T, int CAPACITY>
184+
template<class T, unsigned int CAPACITY>
185185
Boolean
186186
SubHeap<T, CAPACITY>::Saturated()
187187
const {
188-
if (this->Number != CAPACITY) return False;
188+
if (this->Number != static_cast<int>(CAPACITY)) return False;
189189
if (LastChild < 0) return True;
190-
if (LastChild != CAPACITY) return False;
190+
if (LastChild != static_cast<int>(CAPACITY)) return False;
191191
Boolean Return = True;
192-
for (int i = 0; i < CAPACITY + 1; i++) {
192+
for (int i = 0; i < static_cast<int>(CAPACITY) + 1; i++) {
193193
Return = static_cast<Boolean>( (Return & Children[i]->Saturated()));
194194
};
195195
return Return;
196196
}
197197

198198
////////////////////////////////////////////////////
199-
template<class T, int CAPACITY>
199+
template<class T, unsigned int CAPACITY>
200200
T *
201201
SubHeap<T, CAPACITY>::Bottom() {
202202
Error(this->Number == 0, "error:Bottom of empty subheap");
@@ -217,15 +217,15 @@ namespace cubpackpp {
217217
////////////////////////////////////////////////////
218218

219219

220-
template<class T, int CAPACITY>
220+
template<class T, unsigned int CAPACITY>
221221
void
222222
SubHeap<T, CAPACITY>::operator+=(T *t) {
223223
T *NewT;
224224
int Hole;
225225
if (ActiveChild >= 0) {
226226
if (Children[ActiveChild]->Saturated()) {
227227
ActiveChild++;
228-
ActiveChild %= (CAPACITY + 1);
228+
ActiveChild %= (static_cast<int>(CAPACITY) + 1);
229229
if (ActiveChild > LastChild) {
230230
LastChild = ActiveChild;
231231
Children[ActiveChild] = new SubHeap<T, CAPACITY>;
@@ -240,7 +240,7 @@ namespace cubpackpp {
240240
return;
241241
};
242242
} else {
243-
if (this->Number == CAPACITY) {
243+
if (this->Number == static_cast<int>(CAPACITY)) {
244244
ActiveChild = LastChild = 0;
245245
Children[ActiveChild] = new SubHeap<T, CAPACITY>;
246246
Error(!Children[ActiveChild], "heap:allocation failed");
@@ -271,7 +271,7 @@ namespace cubpackpp {
271271
}
272272

273273
////////////////////////////////////////////////////
274-
template<class T, int CAPACITY>
274+
template<class T, unsigned int CAPACITY>
275275
void
276276
SubHeap<T, CAPACITY>::Clear() {
277277
int i;
@@ -288,7 +288,7 @@ namespace cubpackpp {
288288
}
289289

290290
////////////////////////////////////////////////////
291-
template<class T, int CAPACITY>
291+
template<class T, unsigned int CAPACITY>
292292
void
293293
SubHeap<T, CAPACITY>::Print()
294294
const {
@@ -305,25 +305,25 @@ namespace cubpackpp {
305305
}
306306

307307
///////////////////////////////////////////////////
308-
template<class T, int CAPACITY>
308+
template<class T, unsigned int CAPACITY>
309309
int
310-
SubHeap<T, CAPACITY>::FatherOfChild(int i)
310+
SubHeap<T, CAPACITY>::FatherOfChild( int i)
311311
const {
312-
return i / 2 + (CAPACITY + 1) / 2;
312+
return i / 2 + (static_cast<int>(CAPACITY) + 1) / 2;
313313
}
314314

315315
///////////////////////////////////////////////////
316-
template<class T, int CAPACITY>
317-
int
318-
SubHeap<T, CAPACITY>::LeftChild(int i)
316+
template<class T, unsigned int CAPACITY>
317+
int
318+
SubHeap<T, CAPACITY>::LeftChild( int i)
319319
const {
320-
return 2 * (i - (CAPACITY + 1) / 2);
320+
return 2 * (i - (static_cast<int>(CAPACITY) + 1) / 2);
321321
}
322322

323323
//////////////////////////////////////////////////
324-
template<class T, int CAPACITY>
325-
int
326-
SubHeap<T, CAPACITY>::RightChild(int i)
324+
template<class T, unsigned int CAPACITY>
325+
int
326+
SubHeap<T, CAPACITY>::RightChild( int i)
327327
const {
328328
return LeftChild(i) + 1;
329329
}

include/cubpackpp/set.tpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ namespace cubpackpp {
3636
template<class T>
3737
unsigned int
3838
Set<T>::Size() const {
39-
return (Number);
39+
return static_cast<unsigned int>(Number);
4040
}
4141

4242
////////////////////////////////////////////////////////////

0 commit comments

Comments
 (0)