Iphone Objective-C:将浮点值调整为0-1的方法的名称
我创建了以下方法来安全地使用rate。Iphone Objective-C:将浮点值调整为0-1的方法的名称,iphone,objective-c,naming-conventions,method-names,Iphone,Objective C,Naming Conventions,Method Names,我创建了以下方法来安全地使用rate。 (有时,速率可能会变成无效值,如无穷大、NAN或0-1之外的值) 我还使用它从速率计算currentTime: currentTime = [objectOrClass XXXX:rate] * totalTime; 我想这对你会有帮助。我对objective-c不熟悉。所以我还不擅长它的命名规则。与其他语言中的名称相同-指定此算法的用户会如何称呼它?-(double)returnRate:(double)rate@Mark在另一种语言中,方法名是动词+
(有时,速率可能会变成无效值,如无穷大、NAN或0-1之外的值) 我还使用它从速率计算currentTime:
currentTime = [objectOrClass XXXX:rate] * totalTime;
我想这对你会有帮助。我对objective-c不熟悉。所以我还不擅长它的命名规则。与其他语言中的名称相同-指定此算法的用户会如何称呼它?-(double)returnRate:(double)rate@Mark在另一种语言中,方法名是动词+名词。但是在objective-c中,方法名是
名词
,没有动词
,比如stringWithFormat
或imageNamed
。所以,-(double)rate:(double)rate
是objective-c的好名字吗?这可能更合适。我想你还没有理解这个问题。谢谢。我不知道静态内联。我测试了这个功能,它正常工作了。我喜欢短代码。但是MAX(.0f,NAN)返回0.0
但是MAX(NAN,.0f)返回NAN
。可以安全地假设MAX(.0f,NAN)返回0.0
。还是依赖于实现?
rate = [objectOrClass XXXX: currentTime / totalTime];
rate = [objectOrClass XXXX:(currentTime + additionalTime) / totalTime];
currentTime = [objectOrClass XXXX:rate] * totalTime;
-(double) adjustRate:(double)rate;
static inline float RateAligned(float rate) {
return MAX(.0f, MIN(1.0f, rate));
}
When totalTime is zero you will get INFINITY.
When totalTime and currentTime both are zeros you will get NAN.
When (currentTime + additionalTime) and currentTime both are zeros you will get NAN.