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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Alex Z
27 / 1 / 0
Регистрация: 29.06.2011
Сообщений: 136
#1

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

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

Привожу код:
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++
Вот программа проблема с функцией &quot;ras&quot; не правильно работает надо вернуть значения vi,vj,v. #include &lt;stdio.h&gt; #include &lt;conio.h&gt; ...

Ошибка в функции - C++
#include &quot;stdafx.h&quot; #include&lt;iostream&gt; using namespace std; int maxFunction(int a , int n) { int max=a; for(int i=0;...

Ошибка функции - C++
Почему у меня при обработке наипростейшей функции появляется ошибка: 1&gt;------ Построение начато: проект: Fun2, Конфигурация: Debug...

Ошибка в функции - C++
я написал функцию для загрузки графа из файла, но при попытке открытия происходит ошибка ...что нужно...

Ошибка в функции - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;Windows.h&gt; #include &lt;iomanip&gt; using namespace std; char bufUkr; char...

Ошибка в функции - C++
#include &quot;stdafx.h&quot; #include &quot;stdlib.h&quot; #include &quot;windows.h&quot; #include &quot;iostream&quot; #include &quot;math.h&quot; #include &quot;conio.h&quot; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
BumerangSP
4286 / 1408 / 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 стоит "+". Может там какой-то другой знак нужен?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.12.2012, 17:54     Ошибка в функции
Еще ссылки по теме:

Ошибка в функции - C++
не работает функция вывод помогите пожалуйста я задаю 1 букву модели монитора он должен выдать все об этом мониторе исправте пожалуйста. ...

ошибка в функции - C++
помогите найти ошибку. Надо найти определитель матрицы 2х2, #include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;stdio.h&gt; ...

Ошибка в функции - C++
Помогите пожалуйста исправить ошибку bool zero (double*Ar, int n) { bool flag = false; int j = 1; do{ if (Ar=0)...

Ошибка в функции - C++
Здорова! Есть код функции: //глобальная функция которая будет возвращать интерфейс BOOL GetClassObject(const int nClsid,const int...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru