我有一个我上课的简单程序,我找到了一个使用
的程序示例 .h foo.cpp and main.cpp
我进入了那个程序并让它编译得很好但是当我把我的分开时,我无法编译它。
从其他.cpp
文件中运行main方法的典型过程是什么?
这是我当前运行的程序,
main.cpp
#include <iostream>
#include "cars.h"
std::ostream& operator<<(std::ostream& s, const cars& c) {
return s << c.make << ' ' << c.model << ' ' << c.col << ' ' << c.wheels;
}
int main() {
cars c("Audi", "A4", "Black", "4");
cars q(c);
std::cout << c << '\n';
std::cout << q << '\n';
return 0;
}
如果我想创建一个cars.cpp
文件并将其拆分,那么我在主要方法中只需cout
我会遵循哪些规则?
例如我应该在override
中main.cpp
还是应该将其移至cars.cpp
?
我显然可以复制我发现的其他程序,但我想了解这一点。
也不是这不是作业。我完成了它我想知道如何做到这一点,因为我是一个超级英雄,碰巧喜欢领先于其他人。
答案 0 :(得分:2)
添加
extern std::ostream& operator<<(std::ostream& s, const cars& c);
cars.h
中的。
移动实施,
std::ostream& operator<<(std::ostream& s, const cars& c) {
return s << c.make << ' ' << c.model << ' ' << c.col << ' ' << c.wheels;
}
到cars.cpp
。
答案 1 :(得分:1)
我认为cars.cpp已包含cars.h了吗?