• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[OpenGL] [Visual Studio] error C2440: "inicjowanie": nie można konwertować z "_Ty" na "_Objty"

Object Storage Arubacloud
0 głosów
552 wizyt
pytanie zadane 9 lutego 2019 w C i C++ przez wojtij99 Użytkownik (630 p.)
edycja 9 lutego 2019 przez wojtij99

Witam!

Mam problem z kompilacją kodu. Proszę o znalezienie błędu. Wiem, że błąd pojawia się w 21 lini pliku OpenGL_P1.cpp 

Z góry dzięki.

PS.: Jak coś potrzeba proszę pisać postaram się odpowiedzieć jak najszybciej.

Link do kodu: https://github.com/wojtij99/OpenGL_P1

Podczas kompilacji jest wypisywana taka litania błędów:

1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\xmemory0(879): error C2440: "inicjowanie": nie można konwertować z "_Ty" na "_Objty"
1>        with
1>        [
1>            _Ty=Vertex
1>        ]
1>        and
1>        [
1>            _Objty=unsigned int
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\xmemory0(879): note: Nie jest dostępny żaden operator konwersji zdefiniowany przez użytkownika, który mógłby wykonać tę konwersję lub operator nie może zostać wywołany
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\xmemory(163): note: zobacz odwołanie do funkcji szablon; wystąpienie „void std::_Default_allocator_traits<_Alloc>::construct<_Ty,Vertex&>(_Alloc &,_Objty *const ,Vertex &)” jest kompilowane
1>        with
1>        [
1>            _Alloc=std::allocator<GLuint>,
1>            _Ty=unsigned int,
1>            _Objty=unsigned int
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\xmemory(164): note: zobacz odwołanie do funkcji szablon; wystąpienie „void std::_Default_allocator_traits<_Alloc>::construct<_Ty,Vertex&>(_Alloc &,_Objty *const ,Vertex &)” jest kompilowane
1>        with
1>        [
1>            _Alloc=std::allocator<GLuint>,
1>            _Ty=unsigned int,
1>            _Objty=unsigned int
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\xmemory(190): note: zobacz odwołanie do funkcji szablon; wystąpienie „void std::_Uninitialized_backout_al<_FwdIt,_Alloc>::_Emplace_back<_Ty&>(_Ty &)” jest kompilowane
1>        with
1>        [
1>            _FwdIt=unsigned int *,
1>            _Alloc=std::allocator<GLuint>,
1>            _Ty=Vertex
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\xmemory(190): note: zobacz odwołanie do funkcji szablon; wystąpienie „void std::_Uninitialized_backout_al<_FwdIt,_Alloc>::_Emplace_back<_Ty&>(_Ty &)” jest kompilowane
1>        with
1>        [
1>            _FwdIt=unsigned int *,
1>            _Alloc=std::allocator<GLuint>,
1>            _Ty=Vertex
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\xmemory(217): note: zobacz odwołanie do funkcji szablon; wystąpienie „_FwdIt std::_Uninitialized_copy_al_unchecked<_Ty*,unsigned int*,_Alloc>(_InIt,const _InIt,const _FwdIt,_Alloc &,std::_General_ptr_iterator_tag,std::_Any_tag)” jest kompilowane
1>        with
1>        [
1>            _FwdIt=unsigned int *,
1>            _Ty=Vertex,
1>            _Alloc=std::allocator<GLuint>,
1>            _InIt=Vertex *
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vector(1823): note: zobacz odwołanie do funkcji szablon; wystąpienie „_FwdIt *std::_Uninitialized_copy<_Iter,unsigned int*,std::allocator<_Ty>>(const _InIt,const _InIt,_FwdIt,_Alloc &)” jest kompilowane
1>        with
1>        [
1>            _FwdIt=unsigned int *,
1>            _Iter=Vertex *,
1>            _Ty=GLuint,
1>            _InIt=Vertex *,
1>            _Alloc=std::allocator<GLuint>
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vector(708): note: zobacz odwołanie do funkcji szablon; wystąpienie „unsigned int *std::vector<GLuint,std::allocator<_Ty>>::_Ucopy<_Iter>(_Iter,_Iter,unsigned int *)” jest kompilowane
1>        with
1>        [
1>            _Ty=GLuint,
1>            _Iter=Vertex *
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vector(708): note: zobacz odwołanie do funkcji szablon; wystąpienie „unsigned int *std::vector<GLuint,std::allocator<_Ty>>::_Ucopy<_Iter>(_Iter,_Iter,unsigned int *)” jest kompilowane
1>        with
1>        [
1>            _Ty=GLuint,
1>            _Iter=Vertex *
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vector(723): note: zobacz odwołanie do funkcji szablon; wystąpienie „void std::vector<GLuint,std::allocator<_Ty>>::_Range_construct_or_tidy<Vertex*>(_Iter,_Iter,std::forward_iterator_tag)” jest kompilowane
1>        with
1>        [
1>            _Ty=GLuint,
1>            _Iter=Vertex *
1>        ]
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vector(723): note: zobacz odwołanie do funkcji szablon; wystąpienie „void std::vector<GLuint,std::allocator<_Ty>>::_Range_construct_or_tidy<Vertex*>(_Iter,_Iter,std::forward_iterator_tag)” jest kompilowane
1>        with
1>        [
1>            _Ty=GLuint,
1>            _Iter=Vertex *
1>        ]
1>c:\users\wojtij99\documents\workspace\c++\opengl_p1\opengl_p1\opengl_p1.cpp(21): note: zobacz odwołanie do funkcji szablon; wystąpienie „std::vector<GLuint,std::allocator<_Ty>>::vector<Vertex*,void>(_Iter,_Iter,const _Alloc &)” jest kompilowane
1>        with
1>        [
1>            _Ty=GLuint,
1>            _Iter=Vertex *,
1>            _Alloc=std::allocator<GLuint>
1>        ]
1>c:\users\wojtij99\documents\workspace\c++\opengl_p1\opengl_p1\opengl_p1.cpp(21): note: zobacz odwołanie do funkcji szablon; wystąpienie „std::vector<GLuint,std::allocator<_Ty>>::vector<Vertex*,void>(_Iter,_Iter,const _Alloc &)” jest kompilowane
1>        with
1>        [
1>            _Ty=GLuint,
1>            _Iter=Vertex *,
1>            _Alloc=std::allocator<GLuint>
1>        ]

1 odpowiedź

0 głosów
odpowiedź 9 lutego 2019 przez adrian17 Ekspert (344,860 p.)
wybrane 9 lutego 2019 przez wojtij99
 
Najlepsza
new vector<Vertex>(vert,end(vert))

To nie ma zbytnio sensu? Albo przekazujesz sam kontener jako jedyny argument, albo parę iteratorów. Nie kontener i iterator.

komentarz 9 lutego 2019 przez wojtij99 Użytkownik (630 p.)
Właśnie też znalazłem chwile temu :)

Podobne pytania

+2 głosów
1 odpowiedź 9,793 wizyt
0 głosów
3 odpowiedzi 99 wizyt
0 głosów
2 odpowiedzi 1,070 wizyt

92,552 zapytań

141,399 odpowiedzi

319,534 komentarzy

61,938 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...