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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Очистка экрана после каждого выполнения цикла! http://www.cyberforum.ru/cpp-beginners/thread1109913.html
#include <stdio.h> #include <locale.h> #include <string> #include <conio.h> #include <windows.h> #include <iostream> using namespace std; int main(int arg, char* pszArgs)
C++ Вычисление суммы ряда Вычислить сумму ряда с погрешностью \varepsilon=0,0001 в окрестности точки ноль, т.е при . Прошу помочь, отблагодарю. http://www.cyberforum.ru/cpp-beginners/thread1109902.html
C++ Как объединить две структуры в одну в данном коде?
чтобы была 1 структура вместо 2, и убрать функцию из структуры( чтобы не было метода) :help: // 4343.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include <conio.h> #include <iostream> #include <string.h>
C++ Ругается dev c ++
#include <stdio.h> #include <locale.h> #include <string> #include <conio.h> #include <windows.h> using namespace std; int main(int argc, char* pszArgs) {
C++ Учебник С++для начинающих http://www.cyberforum.ru/cpp-beginners/thread1109872.html
Всем привет. Прошу посоветовать учебную литературу для начинающего по С++. Начал изучать по учебнику Дейтеля(5е издание), но, что-то не укладываются в голову некоторые вещи. Заранее спасибо.
C++ Подскажите библиотеку, которая поможет работать с геокартами Добрый день! Ув. форумчане, подскажите, пожалуйста, библиотеку, которая поможет работать с геокартами, а именно находить кратчайший путь и так далее. Как в Яндексе короче. Интересует именно библиотека под плюсы или сишарп. подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619

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

03.03.2014, 14:18. Просмотров 162. Ответов 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;
}
.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru