程序设计方式 之 嵌套头文件包含方式
const string INTERFACE_VERSION="1.0";
|
Main.o
|
Testfile1.o
|
Testfile2.o
|
Testfile3.o
|
普通方式
|
29k
|
25k
|
25k
|
25k
|
嵌套方式
|
29k
|
25k
|
25k
|
25k
|
time g++ -c testfile1.cc testfile2.cc testfile3.cc main.cc real 0m3.049s user 0m2.344s sys 0m0.700s
time g++ -c testfile1.cc testfile2.cc main.cc real 0m2.288s user 0m1.764s sys 0m0.516s
time g++ -c testfile1.cc main.cc real 0m1.533s user 0m1.288s sys 0m0.236s
time g++ -c testfile1.cc testfile2.cc main.cc -DUSE_NESTING_METHOD real 0m2.536s user 0m2.020s sys 0m0.504s
time g++ -c testfile1.cc main.cc -DUSE_NESTING_METHOD real 0m1.698s user 0m1.308s sys 0m0.388s
time g++ -c main.cc -DUSE_NESTING_METHOD real 0m0.857s user 0m0.704s sys 0m0.148s
命令
|
时间
|
time g++ -o nomain main.cc |
Real 0m0.648s
User 0m0.492s
Sys 0m0.148s
|
time g++ -o nomain main.cc testfile1.cc |
Real 0m1.612s
User 0m1.268s
Sys 0m0.344s
|
time g++ -o nomain main.cc testfile1.cc testfile2.cc |
Real 0m2.393s
User 0m1.896s
Sys 0m0.496s
|
time g++ -o nomain main.cc testfile1.cc testfile2.cc testfile3.cc |
Real 0m3.187s
User 0m2.584s
Sys 0m0.564s
|
命令
|
时间
|
time g++ -o nomain main.cc -DUSE_NESTING_METHOD |
Real 0m0.755s
User 0m0.588s
Sys 0m0.156s
|
time g++ -o nomain main.cc testfile1.cc -DUSE_NESTING_METHOD |
Real 0m1.767s
User 0m1.312s
Sys 0m0.452s
|
time g++ -o nomain main.cc testfile1.cc testfile2.cc -DUSE_NESTING_METHOD |
Real 0m2.632s
User 0m2.212s
Sys 0m0.416s
|
time g++ -o nomain main.cc testfile1.cc testfile2.cc testfile3.cc -DUSE_NESTING_METHOD |
Real 0m3.505s
User 0m2.688s
Sys 0m0.812s
|
命令
|
大小(字节)
|
g++ -o nomain main.cc |
7039
|
g++ -o nomain main.cc testfile1.cc |
29949
|
g++ -o nomain main.cc testfile1.cc testfile2.cc |
31603
|
g++ -o nomain main.cc testfile1.cc testfile2.cc testfile3.cc |
33721
|
命令
|
时间
|
g++ -o nomain main.cc -DUSE_NESTING_METHOD |
7039
|
g++ -o nomain main.cc testfile1.cc -DUSE_NESTING_METHOD |
30061
|
g++ -o nomain main.cc testfile1.cc testfile2.cc -DUSE_NESTING_METHOD |
32291
|
g++ -o nomain main.cc testfile1.cc testfile2.cc testfile3.cc -DUSE_NESTING_METHOD |
34769
|
这样在需要即需要A有需要B的文件引用中直接#include “e.h”即可,对于调用者来说非常方便。也许你在开发过程中也一直使用这种开发方式,只是一直没有明确下来这样使用的缺点是否在可允许的范围内,或者一直懒的去做验证,或者一直就没有考虑这点小小的问题,通过本篇文章,希望给你一个明确的答复,在小项目中毫不犹豫的使用吧!
最后更新:2017-04-02 00:06:29