我输入了g++-o main.cpp main,我丢失了我的程序



我刚刚在控制台中写入了以下内容:

g++ -o main.cpp main

我的CCD_ 1不见了。

我是不是失去了3个小时的工作?

是的。-o标志指定输出文件(在您的情况下为main.cpp,因为它是紧跟在它后面的文件名(:

g++ -o main.cpp main
_________/ __/
    _This is the input file.
_____This specifies the output file.

换句话说,您已经告诉编译器尝试编译通常是您的可执行文件,并将结果写入源文件(覆盖它(。一个更合适的命令是:

g++ -o main main.cpp

这是开发人员不时经历的教育时刻之一(包括像我这样的老黑客(,这种事情应该说服你定期提交给git(或其他源代码管理系统(,或者使用构建系统而不是复杂的命令行编译代码。

相关内容