Форум программистов, компьютерный форум CyberForum.ru

Ошибка в функции - C++

Восстановить пароль Регистрация
 
Alex Z
27 / 1 / 0
Регистрация: 29.06.2011
Сообщений: 136
13.12.2012, 15:03     Ошибка в функции #1
Привожу код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// создаёт новую строку, добавляя текущую
// строку к rhs
String String::operator+(const Srting& rhs)
{
    unsigned short totalLen = itsLen + rhs.GetLen();
    String temp(totalLen);
    unsigned short i;
    for (i= 0; i<itsLen; i++)
        temp[i] = itsString[i];
    for (unsigned short j=0; j<rhs.GetLen(); j++, i++)
        temp[i] = rhs[j];
    temp[totalLen]='\0';
    return temp;
}
Компилятор подчёркивает красным слова в строке 3 operator и String (который в скобках String). При компиляции указывает на строку, в которой они оба записаны и выдаёт:

error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
error C2143: синтаксическая ошибка: отсутствие "," перед "&"
error C2511: String String::operator +(const int): перегруженная функция-член не найдена в "String"


Подскажите, что надо поменять в заголовке, чтобы стало правильно. Это очередная опечатка из книги, т.к. код я переписал дословно и ничего в нём не менял.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2012, 15:03     Ошибка в функции
Посмотрите здесь:

C++ Функции. Ошибка(
Ошибка в функции C++
C++ Ошибка в функции
C++ Ошибка в Функции
Ошибка в функции C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
13.12.2012, 17:42     Ошибка в функции #2
Alex Z, может подчеркивает не String, а Srting?

Добавлено через 57 секунд
И, что, String еще и класс называется? Переназовите как-нибудь по-другому.
Alex Z
27 / 1 / 0
Регистрация: 29.06.2011
Сообщений: 136
13.12.2012, 17:48  [ТС]     Ошибка в функции #3
Цитата Сообщение от BumerangSP Посмотреть сообщение
Alex Z, может подчеркивает не String, а Srting?

Добавлено через 57 секунд
И, что, String еще и класс называется? Переназовите как-нибудь по-другому.
А я думал, что проблема из-за того, что после слова operator стоит "+". Может там какой-то другой знак нужен?
Issues
429 / 364 / 37
Регистрация: 06.08.2012
Сообщений: 961
13.12.2012, 17:54     Ошибка в функции #4
Цитата Сообщение от Alex Z Посмотреть сообщение
после слова operator стоит "+". Может там какой-то другой знак нужен?
там нужен знак, той операции, которую вам нужно перегрузить.
Yandex
Объявления
13.12.2012, 17:54     Ошибка в функции
Ответ Создать тему
Опции темы

Текущее время: 23:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru