Utilizator:
Parola:
Am uitat parola... | Cont nou!


Articole Resurse Echipe Competiții Proiecte Forum DevBlogs Locuri de muncă GDROMag Issue#1 GDROCon 2007

 
Forum » Programare » Altele » Problema legata de vectori STL




Pagina 1 din 1 [ 1 ]

Mesaj Info autor
    Postat la 24 Aug 2010 19:43:40    Subiect: Problema legata de vectori STL
Fuzzball info:

Fuzzball:

Incerc sa fac un program in care apelez la vectori stl. Nu am experienta cu vectorii asa ca deocamdata am facut un mic programel de testare dar deja am parte de erori la compilare. Confused

Asa arata programelul:

Elements.h
Cod sursă:
#ifndef ELEMENTS_H
#define ELEMENTS_H
#include

class CNod
{
private:
    float m_Force;
    float m_Moment;
    float m_length;    //distanta de la capatul din stanga al barii la nod
public:
    CNod(float Force, float Moment, float length);
};

class CBara
{
private:
    /* aici este prima eroare --> */vector m_Noduri;        //vector de noduri
public:
    
    CBara();
    virtual ~CBara();

    void Add(CNod* pNod);

};

#endif


Elements.cpp
Cod sursă:
#include "Elements.h"

CNod::CNod( float Force, float Moment, float length )
{
 m_Force = Force;
 m_Moment = Moment;
 m_length = length;
}

CBara::CBara()
{

}

CBara::~CBara()
{
    vector::iterator it;

    for ( it = m_Noduri.begin() ; it < m_Noduri.end(); it++ )
    delete *it;

}

void CBara::Add(CNod* pNod )
{
    m_Noduri.push_back(pNod);
}    
 


main.cpp
Cod sursă:

#include
using namespace std;

#include "Elements.h"

int main()
{
    cout << "Hello World!" << endl;
    return 0;
}
 


Inca nu am apucat sa testez CBara si CNod in main. Doar am compilat si vad ca am erori.

Ma poate ajuta careva? Embarassed

Ultima editare efectuată de Fuzzball pe 24 Aug 2010 19:53:12; 5 editări în total

Will code for food.


Status:
Înregistrat pe:
20 Apr 2008 16:32:46
Vârsta: 27 ani
Mesaje: 106
Locatie: Asteroid of neverending rape and faggotry
Programator

 
    Postat la 24 Aug 2010 19:55:20    Subiect: < fara subiect >
Fuzzball info:

Fuzzball:

Astea sunt erorile. Le-am pus intr-un nou post pentru ca mi se pare ca e o limita de caractere sau randuri pe care le poti pune intr-un post.

1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.h(1Cool : error C2143: syntax error : missing ';' before 'c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.h(1Cool : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.h(1Cool : error C2238: unexpected token(s) preceding ';'
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.cpp(17) : error C2065: 'vector' : undeclared identifier
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.cpp(17) : error C2059: syntax error : '>'
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.cpp(17) : error C2039: 'iterator' : is not a member of '`global namespace''
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.cpp(19) : error C2065: 'it' : undeclared identifier
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.cpp(19) : error C2065: 'm_Noduri' : undeclared identifier
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.cpp(19) : error C2228: left of '.begin' must have class/struct/union
1> type is ''unknown-type''
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.cpp(19) : error C2228: left of '.end' must have class/struct/union
1> type is ''unknown-type''
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.cpp(20) : error C2541: 'delete' : cannot delete objects that are not pointers
1>c:eginning visual c++ 2005 ezistenta materialelorara simplu rezemataelements.cpp(26) : error C2228: left of '.push_back' must have class/struct/union
1> type is ''unknown-type''

Will code for food.


Status:
Înregistrat pe:
20 Apr 2008 16:32:46
Vârsta: 27 ani
Mesaje: 106
Locatie: Asteroid of neverending rape and faggotry
Programator

 
    Postat la 24 Aug 2010 21:18:59    Subiect: < fara subiect >
MithY info:

MithY:

In .h trebuie sa incluzi vector.h si la declarare ai 2 variante: a) ori pui sus, sub include using namespace std; ori scrii std::vector.

Inca un lucru. Pentru ca vector e un template trebuie sa-i dai si ce tip vrei sa retina ex: std::vector(mai mic)int(mai mare) - un vector de int-uri.

Incearca sa te uiti pe google inainte sa scrii pe forum. Sunt site-uri care explica foarte bine cum se lucreaza cu vectori stl si nu numai.

Ultima editare efectuată de MithY pe 24 Aug 2010 21:22:02; 2 editări în total

gamedev for life


Status:
Înregistrat pe:
25 Feb 2007 20:12:02
Vârsta: 22 ani
Mesaje: 443
Locatie: Iasi
Programator
Digital Void Entertainment
 
    Postat la 24 Aug 2010 22:58:31    Subiect: < fara subiect >
jos8cal info:

jos8cal:

e vector (fara .h)

"Sunt la dispozitia dumneavoastra ca sa realizam ceea ce avem de realizat." (Blaxxunromania)

Breviar de personalitati.


Status:
Înregistrat pe:
10 Jun 2007 22:08:36
Vârsta: ? ani
Mesaje: 190
Locatie:


 
    Postat la 25 Aug 2010 12:51:36    Subiect: < fara subiect >
Fuzzball info:

Fuzzball:

Nu pusesem "using namespace std". M-am uitat pe un site care explica cu exemple cum se folosesc vectorii. De-acolo am dat si copy/paste la partea cu vectori in programul meu. Dar sunt elemente ca acest "using namespace" care iti scapa daca nu ai experienta. Mersi pentru ajutor!

Will code for food.


Status:
Înregistrat pe:
20 Apr 2008 16:32:46
Vârsta: 27 ani
Mesaje: 106
Locatie: Asteroid of neverending rape and faggotry
Programator

 

Pagina 1 din 1 [ 1 ]


Server time: 06:19:10 22.05.2012



[ Termeni si conditii | Contact | F.A.Q. | Funny Pictures ]

© 2006 - 2012 Copyright 7thFACTOR Entertainment - All rights reserved