Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

static vector<int> - LINK ERROR

[es] :: C++ programiranje :: static vector<int> - LINK ERROR

[ Pregleda: 923 | Odgovora: 5 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

NrmMyth
Split, Kaštela

Član broj: 63456
Poruke: 839
*.cmu.carnet.hr.



Profil

icon static vector<int> - LINK ERROR04.08.2006. u 08:10

Code:
    class StringMatching
    {
        StringMatching() {}; // omits construction
        static vector<int> his; // PUCA! Link error
        static const int D = 255;
        static const int Q = 16843009;

        static uint GetHighOrdPos( int x );

    public:
        static bool IsMatch( const string& work, const string& pattern );

    }; // ENDS class StringMatching


Ovaj kod mi puca.
Citat:
LINK : error LNK2020: unresolved token (0A000018) ?his@StringMatching@Nrm@@0V?$vector@IV?$allocator@I@std@@@std@@A

Gdje grijesim?
Kad stavim vector<int> u global onda radi kako treba.
04.08.2006. u 08:10 

1jedini
Dejan Milosavljevic
BG

Član broj: 102721
Poruke: 62
212.200.118.*

Sajt: www.ddmrm.com


Profil

icon Re: static vector<int> - LINK ERROR04.08.2006. u 12:19
U cpp fajlu dodaj red:
vector<int> StringMatching::his;

Da ponovim i nesto popravim

Znaci u hpp je
Code:

    class StringMatching
    {
        StringMatching() {}; // omits construction
        static vector<int> his; 
        static const int D; //!< ovoje samo deklaracija
        static const int Q; //!< ovoje samo deklaracija
        static uint GetHighOrdPos( int x );

    public:
        static bool IsMatch( const string& work, const string& pattern );

    }; // ENDS class StringMatching



U cpp je:
Code:


// .......

// ovo su definicije

vector<int> StringMatching::his; 
const int StringMatching::D = 255; 
const int StringMatching::Q = 16843009;

uint StringMatching::GetHighOrdPos( int x )
 {
  //...
 } 
 
bool StringMatching::IsMatch( const string& work, const string& pattern )
 {
  // .......
 }




i typedef-uj negde uint.

AKA DDMM
04.08.2006. u 12:19 

Dragi Tata

Član broj: 1958
Poruke: 3882
*.lionbridge.com.

Sajt: www.novetehnologije.com


Profil

icon Re: static vector<int> - LINK ERROR04.08.2006. u 12:40
OT. Zašto si uopšte pravio klasu koja sadrži samo statičke funkcije? U jezicima kao što su Java i C# to moraš da radiš jer nemaš slobodne funkcije, ali u C++u ne vidim nikakvu potrebu za time.
04.08.2006. u 12:40 

Goran Arandjelovic
Goran Arandjelovic
Beograd

Član broj: 29116
Poruke: 248
*.verat.net.

Jabber: goranche@elitesecurity.org


Profil

icon Re: static vector<int> - LINK ERROR04.08.2006. u 14:31
@NrmMyth
Naravno, kao i proste promenljive, i statičku promenljivu bilo kog složenog tipa je neophodno inicijalizovati.
04.08.2006. u 14:31 

NrmMyth
Split, Kaštela

Član broj: 63456
Poruke: 839
*.cmu.carnet.hr.



Profil

icon Re: static vector<int> - LINK ERROR04.08.2006. u 15:11
Citat:
Dragi Tata: OT. Zašto si uopšte pravio klasu koja sadrži samo statičke funkcije? U jezicima kao što su Java i C# to moraš da radiš jer nemaš slobodne funkcije, ali u C++u ne vidim nikakvu potrebu za time.
Ne znam izgleda da mi se svidja takav nacin wrapiranja. :) Ionako je ovo dio unmamaged koda iz MC++ projekta.

Citat:
1jedini: i typedef-uj negde uint.
Sve je bilo u typedef unsigned int uint, ali sam ih svugdje prepravio u int tako da vas nebi opterecivao, izgleda jedan je ostao... :)

Citat:
1jedini: U cpp fajlu dodaj red:
vector<int> StringMatching::his;
Ne mogu vjerovati da mi je ovako glupa stvar promakla. Hvala Puno.
04.08.2006. u 15:11 

NrmMyth
Split, Kaštela

Član broj: 63456
Poruke: 839
*.cmu.carnet.hr.



Profil

icon Re: static vector<int> - LINK ERROR04.08.2006. u 15:16
Citat:
Goran Arandjelovic: @NrmMyth
Naravno, kao i proste promenljive, i statičku promenljivu bilo kog složenog tipa je neophodno inicijalizovati.

Zar se ne poziva defaultni konstruktor, prije bilo kakve akcije na klasi (compiler makes sure it is).

Nebi bilo lose da u sljedecem standardu C++-a ubace "staticki konstruktor" kao i u .NET-u...
04.08.2006. u 15:16 

[es] :: C++ programiranje :: static vector<int> - LINK ERROR

[ Pregleda: 923 | Odgovora: 5 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.