Допустим, у меня есть три метода:
Метод 1:
void function_1() {
QString("%1").arg(QDate::currentDate().toString("MM/dd/yy"));
}
void function_2() {
QString("%1").arg(QDate::currentDate().toString("MM/dd/yy"));
}
Поскольку мне, возможно, придется заменить более одного аргумента, тогда строка будет очень длинной, чтобы сделать функции более читабельными, я использовал метод 2:
Метод 2:
void function_1() {
QString currentDate = QDate::currentDate().toString("MM/dd/yy");
QString("%1").arg(currentDate);
}
void function_2() {
QString currentDate = QDate::currentDate().toString("MM/dd/yy");
QString("%1").arg(currentDate);
}
Но я заметил, что во многих моих функциях необходимо использовать QString currentDate
, хотя некоторые люди говорят, что Variables should be declared as locally as possible
, если я это делаю, это означает, что я должен написать один и тот же код в каждой функции. Поэтому я должен использовать метод 3 вместо этого, чтобы установить QString currentDate
в class private
.
Метод 3:
class Foo {
public:
Foo() {
currentDate = QDate::currentDate().toString("MM/dd/yy");
}
private:
QString currentDate;
void function_1() {
QString("%1").arg(currentDate);
}
void function_2() {
QString("%1").arg(currentDate);
}
};