Сообщение Как лучше передавать объект в функцию? от 06.04.2018 19:40
Изменено 06.04.2018 19:43 Максим Рогожин
Как лучше передавать объект в функцию?
Привет,
объясните, пожалуйста, как правильно/лучше делать если функции нужно только читать какие-то свойства объекта, но не нужно его менять:
объясните, пожалуйста, как правильно/лучше делать если функции нужно только читать какие-то свойства объекта, но не нужно его менять:
class Document;
class DocumentAnalyser {
public:
virtual bool analyse(const Document* doc) const; // передавать по указателю?
virtual bool analyse(const shared_ptr<Document> doc) const; // или по shared_ptr лучше?
};
shared_ptr<Document> nextDocument();
documentAnalyser->analyse(nextDocument().get()); // так?
documentAnalyser->analyse(nextDocument()); // или так?
Как лучше передавать объект в функцию?
Привет,
объясните, пожалуйста, как правильно/лучше делать если функции нужно только читать какие-то свойства объекта, но не нужно его менять:
UPDATE:
А если nextDocument() вот так объявлена:
тогда как лучше?
объясните, пожалуйста, как правильно/лучше делать если функции нужно только читать какие-то свойства объекта, но не нужно его менять:
class Document;
class DocumentAnalyser {
public:
virtual bool analyse(const Document* doc) const; // передавать по указателю?
virtual bool analyse(const shared_ptr<Document> doc) const; // или по shared_ptr лучше?
};
shared_ptr<Document> nextDocument();
documentAnalyser->analyse(nextDocument().get()); // так?
documentAnalyser->analyse(nextDocument()); // или так?
UPDATE:
А если nextDocument() вот так объявлена:
std::unique_ptr nextDocument();
тогда как лучше?