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

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

Войти
Регистрация
Восстановить пароль
 
taras atavin
Ушёл с форума.
3569 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
#1

Не понятная ошибка - C++

03.03.2014, 14:18. Просмотров 174. Ответов 3
Метки нет (Все метки)

C++
1
|9|error: no matching function for call to 'TArray<std::basic_string<wchar_t> >::TArray(TArray<std::basic_string<wchar_t> >)'|
в строке
C++
1
File=Open(Path);
. Вызываемая функция:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
TArray <std::wstring>                       Open(std::wstring   Path)
{
 TArray <std::wstring> Result;
 std::string           Buffer;
 std::ifstream         File;
 File.open(ToString(PathToProjectFile).c_str());
 while (!File.eof())
 {
  std::getline(File, Buffer);
  Result.Addition(Utf8ToWString(Buffer));
 }
 return Result;
}
, декларация класса:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
template <typename TBase> class TArray
{
//-------------------------------------------------------------------------------------------------
 private:
//-------------------------------------------------------------------------------------------------
  size_t                                    Count;
  TBase                                    *Data;
//-------------------------------------------------------------------------------------------------
 public :
//-------------------------------------------------------------------------------------------------
                                            TArray         (                                );
//-------------------------------------------------------------------------------------------------
                                            TArray         (TArray        &Original         );
//-------------------------------------------------------------------------------------------------
                                           ~TArray         (                                );
//-------------------------------------------------------------------------------------------------
  bool                                      ReSize         (size_t         Count            );
//-------------------------------------------------------------------------------------------------
  bool                                      Empty          (                                );
//-------------------------------------------------------------------------------------------------
  bool                                      Filled         (                                );
//-------------------------------------------------------------------------------------------------
                                            operator size_t(                                );
//-------------------------------------------------------------------------------------------------
  TBase                                    &operator []    (size_t         Index            );
//-------------------------------------------------------------------------------------------------
  TArray                                    operator =     (TArray         Original         );
//-------------------------------------------------------------------------------------------------
  bool                                      Addition       (TBase          s                );
//-------------------------------------------------------------------------------------------------
  TBase                                    &Last           (                                );
//-------------------------------------------------------------------------------------------------
};
, текст оператора:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
template <typename TBase>
TArray <TBase>
TArray <TBase>::                            operator =     (TArray         Original         )
{
 TBase  *Buffer;
 TBase  *Source;
 TBase  *Target;
 TBase  *p;
 TBase  *End;
 size_t  NewCount;
 size_t  NewSize;
 NewSize=Original.Count*sizeof(TBase);
 if (Original.Count>Count)
 {
  Buffer=(TBase*)realloc((void*)Data, NewSize);
  if (Buffer!=NULL)
  {
   NewCount=_msize(Buffer)/sizeof(TBase);
   for (p=Buffer+NewCount-1, End=Buffer+this->Count; p>=End; --p)
   {
    new (p) TBase;
   }
   for (Target=Buffer+NewCount-1, Source=Original.Data+NewCount-1; Target>=Buffer; --Target, --Source)
   {
    *Target=*Source;
   }
   this->Count=NewCount;
         Data =Buffer;
  }
  else
  {
   if (Data!=NULL)
   {
    for (Target=Buffer+Count-1, Source=Original.Data+Count-1; Target>=Buffer; --Target, --Source)
    {
     *Target=*Source;
    }
   }
  }
  return *this;
 }
 if (Original.Count>0)
 {
  if (Original.Count<Count)
  {
   for (p=Buffer+NewCount-1, End=Buffer+this->Count; p>=End; --p)
   {
    p->~TBase();
   }
   Buffer=(TBase*)realloc((void*)Data, NewSize);
   for (Target=Buffer+Count-1, Source=Original.Data+Count-1; Target>=Buffer; --Target, --Source)
   {
    *Target=*Source;
   }
   this->Count=Count;
         Data =Buffer;
   return *this;
  }
  if (Original.Count==Count)
  {
   for (Target=Data+Count-1, Source=Original.Data+Count-1; Target>=Data; --Target, --Source)
   {
    *Target=*Source;
   }
   return *this;
  }
 }
 if (Original.Count==0)
 {
  if (Data!=NULL)
  {
   for (p=Data+this->Count-1; p>=Data; --p)
   {
    p->~TBase();
   }
   free(Data);
   this->Count=0;
         Data =NULL;
  }
  return *this;
 }
 return *this;
}
.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.03.2014, 14:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не понятная ошибка (C++):

Не понятная ошибка - C++
Здорова господа! Вообщем проблема. Написал короче программку как бы имитация контейнеров с общим базовым классом. И пытаюсь туда запулить...

Не понятная ошибка - C++
Ошибка: undefined reference to `Factor(unsigned short, unsigned short&amp;, unsigned short&amp;)'| #include &lt;iostream&gt; using namespace...

Не понятная ошибка - C++
Доброго времени суток...))) С++ изучаю второй день, прошу строго не ругать если моя проблема является элементарной, но тем не менее всю...

set_intersection ??? не понятная ошибка. - C++
есть базовый класс car, производный Bus. Так же есть класс который не связан с Bus и car, он называется Park. Park является frind class для...

не понятная ошибка ввода значений - C++
#include &lt;math.h&gt; #include &lt;iostream&gt; using namespace std; void main() { int x,y,z,w,s,d,e,r,n; x = 4; y = 8; ...

Не понятная ошибка файлы и строки - C++
Не могу понять в чем дело Задача: Посчитать сколько строк в файле начинаються и заканчиваються с одной буквы Вроде прога правильно...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
03.03.2014, 14:33 #2
вероятно конструктор копирования надо сделать с константной ссылкой.
0
Ilot
Модератор
Эксперт С++
1811 / 1168 / 229
Регистрация: 16.05.2013
Сообщений: 3,082
Записей в блоге: 5
Завершенные тесты: 1
03.03.2014, 14:39 #3
del...
0
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
03.03.2014, 14:41 #4
Цитата Сообщение от Ilot Посмотреть сообщение
нельзя создавать в методах класса объект того же класса.
С какого такого перепугу нельзя? Это же не поле класса.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.03.2014, 14:41
Привет! Вот еще темы с ответами:

Не понятная ошибка при чтении из файла - C++
#include&lt;iostream&gt; #include&lt;iomanip&gt; #include&lt;string&gt; #include&lt;fstream&gt; using namespace std; class Person { protected: int...

Не понятная строчка - C++
#pragma comment(lib, &quot;ws2_32.lib&quot;) что эта строчка делает ? я понял что она как то подключает ws2_32.lib но кто распишет ее...

Ошибочка маленькая и не понятная((( - C++
Исправите ошибку.За ране спасибо! #include &quot;stdafx.h&quot; #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace...

Какая книга по С++ самая понятная - C++
Какая книга по С++ самая понятная


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.03.2014, 14:41
Ответ Создать тему
Опции темы

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