Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
27 / 1 / 0
Регистрация: 29.06.2011
Сообщений: 136
1

Ошибка в функции

13.12.2012, 15:03. Показов 499. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привожу код:
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"


Подскажите, что надо поменять в заголовке, чтобы стало правильно. Это очередная опечатка из книги, т.к. код я переписал дословно и ничего в нём не менял.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.12.2012, 15:03
Ответы с готовыми решениями:

А почему ошибка, что функции print и read не определены в функции main()?
Что-то не понимаю. Они определены в заголовочном файле. А подчеркивается красным что нет.... ...

Ошибка формирования отчета в СКД: ошибка при попытке вычисления значения агрегатной функции
Решая свою задачку, нарыла формулу, в которой вылазит ошибка. И не могу понять.. Вот формула...

Ошибка в шаблоне функции: "Отсутствуют экземпляры шаблон функции, соответствующие списку аргументов"
#include &lt;iostream&gt; #include &lt;iterator&gt; #include &lt;map&gt; #include &lt;Windows.h&gt; #include...

Ошибка "Присваивание имени функции вне тела этой функции" при наличии двух одноименных функций в одном контексте
Данный код: type T = class public function F: integer; begin F := 2; ...

3
4311 / 1422 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
13.12.2012, 17:42 2
Alex Z, может подчеркивает не String, а Srting?

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

Добавлено через 57 секунд
И, что, String еще и класс называется? Переназовите как-нибудь по-другому.
А я думал, что проблема из-за того, что после слова operator стоит "+". Может там какой-то другой знак нужен?
0
433 / 368 / 149
Регистрация: 06.08.2012
Сообщений: 961
13.12.2012, 17:54 4
Цитата Сообщение от Alex Z Посмотреть сообщение
после слова operator стоит "+". Может там какой-то другой знак нужен?
там нужен знак, той операции, которую вам нужно перегрузить.
1
13.12.2012, 17:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.12.2012, 17:54
Помогаю со студенческими работами здесь

График функции и ошибка "Неверное число параметров функции"
Program aaa; Uses GraphABC; Var x,y:integer; Begin For x:=0 to 360 do Begin Y:=Round(...

Ошибка в функции
function check_reg_info($login, $pswd, $pswd_r, $email){ # создаем регулярное выражение для...

Ошибка в функции
Здорова! Есть код функции: //глобальная функция которая будет возвращать интерфейс BOOL...

Ошибка в функции
Ошибка в функции if ((m % 2 == 0) &amp;&amp; (n % 2 == 1)) { for (int i = 0; i &lt; n; i++) for...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru