Тип auto
От: An_un_occ  
Дата: 28.11.13 16:11
Оценка: :)))
Доброго времени суток. Затупок на данном кода кусочке. Компилятор выдаёт ошибки типа:

error C2143: синтаксическая ошибка: отсутствие "," перед ":" (строка --> for (auto &i: weight))
error C4430: отсутствует спецификатор типа — предполагается int. Примечание. C++ не поддерживает int по умолчанию (та же строка, что и выше)
error C2530: i: ссылки должны быть инициализированы (та же строка, что и выше)

У меня НЕ новая версия VS. Поэтому не поддерживаются некоторые элементы C++11, в данном случае полноценная работа с "auto". Можно ли сделать нечто аналогичное, но работающее для старой версии и как? Заранее спасибо!


int main()
{
    int weight[0x100];
    for (auto &i: weight)
    i = 0;
    {
        ifstream f("../r.txt");
        while (!f.eof())
        {
            unsigned char ch;
            f.read((char *)&ch, sizeof(ch));
            ++weight[ch];
        }
    }
    for (int i=0; i < 0x100; ++i)
        if (weight[i]>0)
            cout<< weight[i]<<" " << (char)i <<endl;
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.