Здравствуйте, xma, Вы писали:
xma>это же константа, как ты её в теле конструктора изменишь — её либо сразу, либо в списке инициализации конструктора только можно задать
А, точно.
Тогда твой вариант так наверное лучше
class Viewer {
private:
static const std::string kWindowName_Base{"Video Viewer"};
const std::string kWindowName_;
public:
Viewer(std::string_view suffix):
kWindowName_(suffix.empty() ? kWindowName_Base : kWindowName_Base + " " + suffix){};
};
добавил статик чтоб не хранить лишний элемент, и добавил стрингвью чтоб суффикс попусту не копировать туда сюда
Нет такой подлости и мерзости, на которую бы не пошёл gcc ради бессмысленных 5% скорости в никому не нужном синтетическом тесте