
-----------------------------------
deltatux
Wed Jan 21, 2009 10:08 pm

C++ Struct Calling Confusion
-----------------------------------
Alright,

I'm getting errors and it's confusing me on how to declare and pass a struct.

http://pastebin.ca/1315254

The error I'm getting is:

1>------ Build started: Project: Workshop2, Configuration: Debug x64 ------
1>Compiling...
1>libpos.cpp
1>.\libpos.cpp(24) : error C2027: use of undefined type 'POS'
1>        d:\devel\c++\workshop2\workshop2\pointofsales.h(19) : see declaration of 'POS'
1>.\libpos.cpp(24) : error C2228: left of '.taxable' must have class/struct/union
1>.\libpos.cpp(25) : error C2027: use of undefined type 'POS'
1>        d:\devel\c++\workshop2\workshop2\pointofsales.h(19) : see declaration of 'POS'
1>.\libpos.cpp(25) : error C2228: left of '.ftax' must have class/struct/union
1>.\libpos.cpp(25) : error C2676: binary '

Please help.

Thanks,
deltatux

-----------------------------------
A.J
Wed Jan 21, 2009 10:36 pm

Re: C++ Struct Calling Confusion
-----------------------------------
could you show me a copy of the code that you tried to compile (or is that what the link you provided is for?)

-----------------------------------
deltatux
Wed Jan 21, 2009 10:38 pm

RE:C++ Struct Calling Confusion
-----------------------------------
the link shows the code.

and it's an Not For Work code (since some guy told me it's a requirement for GPL'd code here....)

Thanks,
deltatux

-----------------------------------
A.J
Wed Jan 21, 2009 10:40 pm

Re: C++ Struct Calling Confusion
-----------------------------------
k, i think ur problem is this :


        struct POS sales;


it should instead be :


        POS sales;


-----------------------------------
deltatux
Wed Jan 21, 2009 11:00 pm

RE:C++ Struct Calling Confusion
-----------------------------------
nevermind, I fixed it with my friend's suggestion.

Just by moving the struct to the header, it fixed it.

Now, I'm getting another LNK2019 error.

1>pointofsales.obj : error LNK2019: unresolved external symbol "void __cdecl posmath(struct POS,int *,double *,double *)" (?posmath@@YAXUPOS@@PEAHPEAN2@Z) referenced in function "void __cdecl initPOS(void)" (?initPOS@@YAXXZ)
1>D:\devel\c++\Workshop2\x64\Debug\Workshop2.exe : fatal error LNK1120: 1 unresolved externals

deltatux

-----------------------------------
A.J
Thu Jan 22, 2009 7:29 am

Re: C++ Struct Calling Confusion
-----------------------------------
can u show me what u fixed?

-----------------------------------
DemonWasp
Thu Jan 22, 2009 9:43 am

Re: RE:C++ Struct Calling Confusion
-----------------------------------
1>pointofsales.obj : error LNK2019: unresolved external symbol "void __cdecl posmath(struct POS,int *,double *,double *)" (?posmath@@YAXUPOS@@PEAHPEAN2@Z) referenced in function "void __cdecl initPOS(void)" (?initPOS@@YAXXZ)
1>D:\devel\c++\Workshop2\x64\Debug\Workshop2.exe : fatal error LNK1120: 1 unresolved externals

This error message is telling you it can't find the method:
void posmath ( struct POS , int *, double *, double *)

Where is that function declared, where is it defined? Are you sure both are being included properly? Are you sure the argument lists match exactly?
