当出现错误ld return 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$.reptr._ZN7EMPLOYE6valeurE[.reptr.._ZN7EMPLOYE6valeurE]+0x0(:对"EMPLOYE::valeur"的未定义引用。
C: \Program Files(x86(\Dev Cpp\MinGW64\x86_64-w64-mingw32\lib\libmingw32.a(lib64_libming32_a-crt0_C.o(在函数"main"中:
C: \crossdev\src\mingw-w64-v3-git\mingw-w 64-crt\crt\crt0_C.C对"WinMain"的未定义引用
C: \Users\user\Desktop\SUJET 1\collect2.exe[Error]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
您需要显式初始化静态变量。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
}
您正在编译一个没有入口点的程序,也就是主函数
int main(int argc, char** argv){ return 0; }
它是必需的,因为它将是程序的入口点,如果你正在构建一个库,你可能想更改编译器设置。当然,如果你想让事情发生,把其他东西放在main中,你可以放弃参数,如果你不使用它们
相关文章:
- Constexpr替代了新的放置方式,可以让内存中的对象保持未初始化状态
- 我不断收到 [错误] ID 返回 1 退出状态错误,但看不到问题所在
- OSX MetalKit CVMetalTextureCacheCreateTextureFromImage失败,状态:
- std::future_error:无关联状态
- 如何避免LED在循环状态变化中闪烁?
- boost 是否有按特殊类型值编码状态"compact optional"?
- 为什么系统函数总是在C++中返回已转移的退出状态?
- C++ 中的编译错误:未定义对"主"的引用 collect2:错误:ld 返回 1 个退出状态
- 当可输入框在窗口中处于活动状态时获得通知的任何方法
- 检查两个节点在子节点上是否具有相同状态的更优雅的方法
- 将有状态的 lambda 传递到 C 样式函数中,而无需上下文参数
- 在 nullptr 上调用无状态类的非静态成员函数是否合法?
- 编译问题:在函数"_start"中:未定义对"主"的引用 collect2:错误:ld 返回 1 个退出状态
- C++部分概念 id:显式模板规范顺序/第一个参数的特殊状态的原因是什么?
- 试图在崇高中奔跑. 错误 已发生: 收集2.exe: 错误: ld 返回 1 退出状态
- 在容器上移动分配:以前包含的对象的状态
- collect2:错误:ld 返回 1 个退出状态未定义的引用
- 具有动态大小的特征矩阵的默认初始状态
- 如何从Clojure调用C++程序,以使程序保持打开状态?
- 当出现错误ld return 1退出状态时,如何编译程序