[SFML, C++] Klasa zapisująca obrazy
Ostatnio zmodyfikowano 2011-08-20 23:41
Dark Temat założony przez niniejszego użytkownika |
[SFML, C++] Klasa zapisująca obrazy » 2011-08-20 18:54:57 Chciałem sobie stworzyć klasę gdzie będę miał zapisywane obrazy, ale po wielu nieudanych korektach nie wiem jak to poprawić, przyda mi się to do kolizji gdy zrobię następną klasę ze spritami:
class Image { protected: Class ClassObj; vector < sf::Image > * Image; vector < string > * Name; public: void AddImage( string FileName ) { sf::Image ImageI; if( ImageI.LoadFromFile( FileName ) ) { Image->push_back( ImageI ); Name->push_back( FileName ); } else cout << "Błąd wczytywania" << endl; } void ListOfImage() { for( int i = 0; i < Name->size(); i++ ) { cout << Name[ i ] << endl; } } }; |
|
pekfos |
» 2011-08-20 19:01:53 ImageI.LoadFromFile( FileName ); if( ImageI.LoadFromFile( FileName ) ) jaki sens? |
|
Dark Temat założony przez niniejszego użytkownika |
» 2011-08-20 19:36:41 @ up Ok, poprawiłem to |
|
malan |
» 2011-08-20 21:59:07 vector < sf::Image > * Image; vector < string > * Name; Dlaczego wskaźniki? |
|
Thud |
» 2011-08-20 22:27:39 Właśnie, w rozwiązaniu które Ci podałem nie było wskaźnika na image (znaczy był, ale przecież później poprawiłem kod)? Link. |
|
Dark Temat założony przez niniejszego użytkownika |
» 2011-08-20 23:41:12 Zmieniłem już te wskaźniki na tablice lecz mam błędy w debugerze( cała klasa Image to właśnie 28 linijki do 53):
visual studio 2010\projects\project_b\project_b\head.h(31): error C2146: syntax error : missing ';' before identifier 'ClassObj'
1>c:\users\urszula\documents\visual studio 2010\projects\project_b\project_b\head.h(31): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
visual studio 2010\projects\project_b\project_b\head.h(31): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
visual studio 2010\projects\project_b\project_b\head.h(32): error C2380: type(s) preceding 'Image' (constructor with return type, or illegal redefinition of current class-name?)
visual studio 2010\projects\project_b\project_b\head.h(32): error C2208: 'Image' : no members defined using this type
visual studio 2010\projects\project_b\project_b\head.h(40): error C2143: syntax error : missing ';' before '.'
visual studio 2010\projects\project_b\project_b\head.h(40): error C2143: syntax error : missing ';' before '.'
visual studio 2010\projects\project_b\project_b\head.h(49): warning C4018: '<' : signed/unsigned mismatch
1> fizyka.cpp
visual studio 2010\projects\project_b\project_b\head.h(31): error C2146: syntax error : missing ';' before identifier 'ClassObj'
visual studio 2010\projects\project_b\project_b\head.h(31): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
visual studio 2010\projects\project_b\project_b\head.h(31): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
visual studio 2010\projects\project_b\project_b\head.h(32): error C2380: type(s) preceding 'Image' (constructor with return type, or illegal redefinition of current class-name?)
visual studio 2010\projects\project_b\project_b\head.h(32): error C2208: 'Image' : no members defined using this type
visual studio 2010\projects\project_b\project_b\head.h(40): error C2143: syntax error : missing ';' before '.'
visual studio 2010\projects\project_b\project_b\head.h(40): error C2143: syntax error : missing ';' before '.'
visual studio 2010\projects\project_b\project_b\head.h(49): warning C4018: '<' : signed/unsigned mismatch
1> Generating Code...
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
@edit Działa teraz, zmieniłem nazwę tablicy aby nie kolidował z konstruktorem klasy. |
|
« 1 » |