我在写课时遇到问题。当我将定义移动到另一个源文件以保持“干净”时,出现了问题。
我收到的消息是:
1>------ Build started: Project: 1 projekt - sklep, Configuration: Debug Win32 ------
1> main.cpp
.1funkcje.obj : error LNK2001: unresolved external symbol "class Rachunek Kasa_sklepowa" .(?Kasa_sklepowa@@3VRachunek@@A)
1>metody_r.obj : error LNK2001: unresolved external symbol "class Rachunek Kasa_sklepowa" .(?Kasa_sklepowa@@3VRachunek@@A)
1>C:\Users\Ja\Desktop\Studia\PW\Semestr II\C++\Cwiczenia - klasy,obiekty\Debug\1 projekt - .sklep.exe : fatal error LNK1120: 1 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
我在 main.cpp 中声明为全局的对象在哪里Kasa_Sklepowa
- 我猜这可能是出现问题的原因。
在它向我展示带字符串的类声明中有问题之前。
#pragma once
class Rachunek
{
double saldo_ogolne;
public:
Rachunek() {saldo_ogolne=0;};
~Rachunek();
void transakcja(std::string,std::string,double);
void czysc_zarobki();
};
源文件 (cpp)
extern Rachunek Kasa_sklepowa;
void Rachunek::transakcja(string _pes,string co,double ile)
{
bla bla
}
主文件
Rachunek Kasa_sklepowa();
int main (int agc, char**argv)
{
...
}