Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[SFML2.2] vector i funkcja..

Ostatnio zmodyfikowano 2015-06-23 20:35
Autor Wiadomość
bladykiel
Temat założony przez niniejszego użytkownika
[SFML2.2] vector i funkcja..
» 2015-06-23 20:17:16
Witam, mam taki problem..
otóż mam parę klas:
enemy,tower,strzal,sklep.

czemu w klasie sklep mogę mieć funckję:
C/C++
void Kupno( int akcja, sf::RenderWindow & okno, std::vector < tower > & d ) {
   
}

natomiast nie mogę mieć:
C/C++
void Kupno2( int akcja, sf::RenderWindow & okno, std::vector < strzal > & d ) {
}


Po wywołaniu obu funkcji w pętli głównej programu, pierwsza działa ok, a przy drugiej wywala błąd:

Error: a refeerence of type "std::vector<<error-type, std::allocator<<error-type>>> &"(not const-qualified) cannot be initialized with a value of type "std::vector<strzal, std::allocatorstrzal>>"


vectory są tworzone w taki sposób:
C/C++
std::vector < tower > d;
std::vector < strzal > b;

kompletnie nie rozumiem problemu, gdyż po zmianie "typu" vectora na inny niz strzal wszystko dziala ok...

error przy kompilacji:
1>main.cpp(92): error C2664: 'tower::enemySpotted' : cannot convert parameter 1 from 'std::vector<_Ty>' to 'std::vector &'
1>          with
1>          [ 1>              _Ty=strzal
1>          ]
P-133985
pekfos
» 2015-06-23 20:26:06
Jakie masz dyrektywy #include na początku każdego pliku?
P-133987
bladykiel
Temat założony przez niniejszego użytkownika
» 2015-06-23 20:28:00
w mainie mam:
C/C++
#include <SFML/Graphics.hpp>
#include "enemy.h"
#include "tower.h"
#include "sklep.h"
#include "strzal.h"

w innych nie mam żadnych.
problem jest z klasa "strzal" bo gdy w klasie zrobie funkcje np:
C/C++
void Zrob( std::vector < tower > & d ) { }
dziala ok..
Dla innych wektorów również. Problem pojawia się tylko przy vectorze typu strzal czyli
C/C++
void Zrob( std::vector < strzal > & d ) { }
P-133988
pekfos
» 2015-06-23 20:31:40
w innych nie mam żadnych.
No to źle. Przenieś #include "sklep.h" w mainie na koniec, może zadziała.
P-133991
bladykiel
Temat założony przez niniejszego użytkownika
» 2015-06-23 20:35:16
Powinno być ok, z tym że teraz gdzie indziej są błędy :) ale tu sobie jakoś poradzę chyba :)
Dzięki wielkie za naprowadzenie :)
P-133992
« 1 »
  Strona 1 z 1