请只提交一个zip文件。您的zip文件应包含以下文件:
如何交上2个cpp文件?这是否意味着我将有两个不同的项目并将它们合并为一个?我理解类,但我不确定它们如何在zip文件中使用。
注意:我不是在寻找代码;我在寻求理解。也许有人做过类似的事情?这是一个包含整数而不是商品的购物清单。
答案 0 :(得分:4)
C ++支持一个名为"单独编译的概念"。
基本上,每个.cpp文件都可以独立于其他所有文件进行编译,最终的程序由"链接"所有已编译的文件在一起。
答案 1 :(得分:2)
每个.cpp
文件都实现了一组函数。整个程序是这些函数的结合......编译器(特别是“链接器”,它是编译器的最后一个阶段)将函数收集在一起并将其打包到您的可执行文件中。
项目通常包含大量.cpp
个文件。关于如何对程序进行划分,C ++几乎没有规则,但通常每个都包含一个类或一组函数。
存在头文件,因此每个.cpp
文件都可以识别其他文件中定义的功能。
答案 2 :(得分:2)
- ItemListClass.h
- ItemListMethods.cpp
- ItemListTests.h
- ItemListTests.cpp
- 生成文件
- numbers.txt
这意味着ItemListClass.h为ItemList提供了调用者可见的接口,ItemList的成员函数的外部实现在ItemListMethods.cpp中,并且是一个测试程序(可能是{{ 1}} ItemListTests.cpp中的函数将执行ItemList功能。我认为没有特别的理由认为ItemListTests.h是有用的......无论ItemListTests可以信任地包含什么都不可能用于除ItemListTests.cpp之外的任何代码,如果是,那么它应该真的被移动到“ TestSupport.h“标题或类似内容。但是,这意味着ItemListMethods.cpp应该包含ItemLists.h,而ItemListTests.cpp应该包含ItemListTests.h。 numbers.txt可能是输入数据,您的ItemListTests.cpp将在测试期间读取以填充ItemList对象。 makefile应该做一些模糊的事情:
main()
然后,您可以在同一目录中键入“make”以构建可执行文件ItemListTest: <tab> ItemList.o ItemListTest.h ItemListTest.cpp
<tab>g++ -g -o ItemListTest ItemList.o ItemListTest.cpp
ItemList.o: <tab> ItemList.h ItemList.cpp
<tab>g++ -g -c ItemList.cpp
。
答案 3 :(得分:1)
您应该阅读makefiles。
基本上,你的makefile 是你提交的项目,由四个文件组成。
答案 4 :(得分:1)
几乎所有C ++ IDE /编译器中的项目都允许有多个源文件。通常,除非提取它们,否则无法从zip文件中编译它们。他们要求拉链的原因是因为它很容易发送/提交。在教师/考官收到后,必须将其提取出来。