クラスを書くのに問題があります。この問題は、定義を別のソース ファイルに移動して「クリーン」なままにしたときに発生しました。
私が受け取るメッセージは次のとおりです。
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 ==========
whereKasa_Sklepowa
は、main.cpp でグローバルとして宣言したオブジェクトです。これが何か問題がある理由である可能性があります。
文字列を使用したクラス宣言に問題があることを示す前に。
#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)
{
...
}