簡體   English   中英

出現錯誤 ld 返回 1 退出狀態時如何編譯程序

[英]How can I compile a program while :Error ld returned 1 exit status is appearing

在創建我的 C++ 項目時,我發現了一些關於我的語法的錯誤,但還有一些其他文件,這是我發現的錯誤:

C:\Users\user\Desktop\SUJET 1\EMPLOYE.o EMPLOYE.cpp:(.rdata$.refptr._ZN7EMPLOYE6valeurE[.refptr._ZN7EMPLOYE6valeurE]+0x0):未定義對“EMPLOYE”的引用。:

C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\lib\libmingw32.a(lib64_libmingw32_a-crt0_c.o) 在 ZC1C425268E68385D14AB5074'C17A

C:\crossdev\src\mingw-w64-v3-git\mingw-w64-crt\crt\crt0_c.c 未定義對“WinMain”的引用

C:\Users\user\Desktop\SUJET 1\collect2.exe [錯誤] ld 返回 1 退出狀態

C:\Users\user\Desktop\SUJET 1\Makefile.win 目標“SUJET”配方失敗

文件:

雇員.cpp:

#include <iostream>
#include <string>
#include"EMPLOYE.h"

using namespace std;

EMPLOYE::EMPLOYE(){};
EMPLOYE::EMPLOYE(string n ,int m ,int i){
    nom=n;
    matricule=m;
    indice=i;
    int valeur = 10;
};

void EMPLOYE :: afficherEmploye(){
    cout << "votre nom est"<<nom<<"votre matricule est" << matricule << "votre indice est" << indice << endl;   
};

int EMPLOYE :: salaire(){
    return indice*valeur; //salaire
};

雇員.h:

#ifndef EMPLOYE_h
#define EMPLOYE_h
#include <iostream>
#include <string>

using namespace std;

class EMPLOYE{
protected:
    int indice;
    string nom;
    static int valeur ;

public:
    int matricule;
    EMPLOYE();
    EMPLOYE(string , int, int);
    void afficherEmploye();
    virtual int salaire();
};

#endif 

您需要顯式初始化 static 變量。 https://www.geeksforgeeks.org/static-keyword-cpp/

#include <iostream>
#include <string>
#include"doc.h"

using namespace std;

int EMPLOYE::valeur = 0;

EMPLOYE::EMPLOYE(){};
EMPLOYE::EMPLOYE(string n ,int m ,int i){
nom=n;
matricule=m;
indice=i;
valeur = 10;
};
void EMPLOYE :: afficherEmploye(){
cout<<"votre nom est"<<nom<<"votre matricule est"<<matricule<<"votre indice 
est"<<indice<<endl;
};

int EMPLOYE :: salaire(){
return indice*(EMPLOYE::valeur); //salaire
};

int main()
{
//do something
}

你正在編譯一個沒有入口點的程序,也就是一個主 function

int main(int argc, char** argv){ return 0; }

它是必需的,因為它將是您的程序的入口點,如果您正在構建一個庫,您可能想要更改您的編譯器設置。 當然,如果你想讓事情發生,把別的東西放在 main 里面,你可以丟棄參數,因為你不使用它們

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM