例如,请考虑以下两个setter方法:让一个setter返回一个bool是否是一个好习惯?
bool setMonth(int month) {
bool valid = false;
if (month > 0 && month < 12) {
this->month = month;
valid = true;
}
return valid;
}
与
void setMonth(int month) {
if (month > 0 && month < 12) {
this->month = month;
}
}
第一个让类的客户端明确知道集是否失败。这被认为是良好的做法?
是根本不是一个好习惯吗? – 2017-06-17 16:54:11
请仅使用语言标记来表示您实际编程的语言。 –
这是一个二传手的非惯用用法,所以没有人会期待/期待。抛出IllegalArgumentException异常会更好。 –