Оптимизация передачи параметров

Я читаю код завершен и у меня возник вопрос о «Упрощение передачи параметров». Автор говорит, что если вы передаете параметр между несколькими подпрограммами, это может указывать на необходимость преобразования этих подпрограмм в класс, который разделяет параметр как данные класса.

Означает ли это, что если у меня есть несколько отдельных классов, которые используют одни и те же данные, я должен создать один новый класс, который использует эти данные, а затем наследовать для создания новых классов?

Или же

Означает ли это, что если в моей программе есть куча свободных подпрограмм, я должен пойти дальше и поместить их в класс, получить преимущества инкапсуляции и т. Д.

Спасибо

0

Решение

Последний. Похоже, они говорят о таком случае:

void function_1(std::string& my_data);
void function_2(std::string& my_data);

void main() {
std::string my_data = "SomeString";
function_1(my_data);
function_2(my_data);
}

Который может быть изменен на:

class MyClass {
std::string my_data;
pulbic:
MyClass(const std::string& str) : my_data(str) {}
void function_1();
void function_2();
}

void main() {
MyClass obj("SomeString");
obj.function_1();
obj.function_2();
}

куда function_1 а также function_2 использовать my_data поле, вместо того, чтобы каждый раз передавать строку.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]