Re: помогите улучшить производительность
От: gegMOPO4  
Дата: 10.07.10 10:14
Оценка: 1 (1)
1. Убрать присваивания в конструкторе и сразу инициализировать члены.
    foo(int x, int y)
        m_x(x),
        m_y(y),
        m_s("test"),
        m_f("test"),
        ...
    {


2. Если указанные инициализирующие строки константы — лучше сразу вынести их в статические константные std::string.
static std::string const TEST("test");

Если передаются в конструктор как аргументы — передавать их по константной ссылке.
    foo(int x, int y, std::string const & s, std::string const & f, ...)


3. При добавлении в список избегать локального экземпляра foo, создавать сразу при вызове push_back.
    list.push_back(foo(3, 5));
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.