我有一个10个整数的数组,k是一个循环遍历数组的整数。每当我做'k = k + 1',一个被添加到'k',(如果'k'是7,那么它变成8)。但是如果'k'达到9,我不想'k + 1'评价为10,我希望它变成1;如何告诉c + + 9 + 1应该是1而不是10?
我认为使用这样的功能:
void add_one(int &k){
if(k == 9){
k = 1;
}else{
k = k+1;
}
}
,每当我想添加一个到“K”:
add_one(k);
然后我发现了运算符重载,但它是非常混淆并认为必须有更好的方法。我们可以告诉C++:只要它看到k + 1,其中k = 9,它必须返回1而不是10?
如果它是一个数组,你不希望它从9到0? – chris
对于Bjarne的缘故,你为什么要改变整数的“+”的含义?下一步是什么?你想改变3的值? –
更好的意思是什么?您可以使用三元运算符写if语句,或者按照答案中的建议使用%。 – Rndm