我有一个VS生成的C ++ Win32 DLL项目。它有以下文件:
stdafx.h中 targetver.h myProject.h dllmain.cpp myProject.cpp stdafx.cpp
我可以删除targetver.h,并将dllmain.cpp合并到myProject.cpp中。我还能做些什么来获得最简单的文件结构,最好是一个文件。我需要动态发出此代码文件并将其构建到Win32 DLL中。
答案 0 :(得分:1)
除了Andy所说的,您还可以将myProject
标头和实施文件与dllmain.cpp
合并。但为什么不保留这些文件并在运行时创建vsproj文件?
答案 1 :(得分:1)
或者您可以创建一个空项目。
答案 2 :(得分:1)
如果您想要简约的文件结构,您可以自己创建文件。启动一个空项目,或删除所有文件。哎呀,只需创建一个文件夹,编写main.cpp和compile it from the command line with cl。
很少有IDE真正尝试最小化你正在尝试的文件 - 但是当你创建项目时,你可以减少一点:stdafx。[h,cpp]用于预编译头文件,你可以在创建时禁用它们该项目。
那就是说,我并没有真正看到在编译语言项目中最小化源代码量的价值 - 它不会对输出文件/ dll的数量产生有意义的影响,并且使用得当,使用正确更多文件只能帮助您的代码清晰。
答案 3 :(得分:0)
IIRC,myProject.h
和myProject.cpp
都包含导出类的示例。您可以轻松删除它们。
stdafx.cpp
和stdafx.h
用于标准预编译头文件。如果关闭需要预编译头的设置,则也不需要这些文件。
答案 4 :(得分:0)
您可以将生成的文件#include到现有的多文件项目中。这样你就可以拥有一个复杂项目的shell,只发出更小的东西,比如一个简单的函数。
例如:
#include <system_stuff>
void main()
{
Go();
}
#include "generated_file_that_has_method_go.cpp"
void other_code()
{
}