已解决 类模板中分离时export产生的原因、作用和用法
来源:互联网 发布:车铣复合编程 编辑:程序博客网 时间:2024/06/09 21:33
查了N久的资料,很累,对于一个初学C++的忽然引入这个概念,纯粹就是一种灾难,
直接打击我学习的信心和动力。幸好浪费了两天,查出以下”半解“的知识。
初解:
背景:export目前支持的编译很少,据介绍只有一家编译器支持(虽然它是C++标准),VC6,7是不支持的。
原因:一般类模板的声明及定义都会放在一个头文件中,如果一个项目不大的情况下,是不关痛痒的。
但是如果是一个大的项目,就出现麻烦了:因为模板的声明与定义都会在头文件中,很多这样的头文件都会包含进去,
这样就会造成大量的资源紧张与浪费,增加系统开销,为了节约,当然C和C++的很多语句都是冲着”节约“而变化的,
于是就产生了一个export,它的作用是做啥呢,就是把类模板的声明与定义分离开(就象普通类定义一样),声明在头文件中,
定义在CPP文件中,这样,头文件包括就减轻了负担,同时根据需要才调用CPP中的类模板函数,这样就起到
分流节约的目的,就相当于,一个大卡车不能通过山洞,但是如果把货物分成几份,分别通过山洞。
用法:在声明中保持不变,仅在定义的CPP文件中对模板函数成员前面加入export即可。
这样这个CPP就可以单独编译,生成的对象文件可以用作使用该类模板的程序的一部分。
- 已解决 类模板中分离时export产生的原因、作用和用法
- 关于类模板中类定义不能分离成.cpp和.h文件的原因
- 死锁产生的原因和解决
- linux中export和source的作用和区别
- linux中export和source的作用和区别
- linux中export和source的作用和区别
- linux中export和source的作用和区别
- linux中export和source的作用和区别
- linux中export和source的作用和区别
- linux中export和source的作用和区别
- makefile中export的作用
- linux中export的作用
- LINUX中 export的作用
- C++中类模板和实现分离的方法
- C++中模板类的声明和实现分离问题
- linux中export的作用和source命令
- 产生死锁的原因和必要条件 解决死锁的方法
- 【已解决】一个makefile中export出来的变量在另外一个makefile中无法访问
- start_armboot()函数
- linux内核学习初笔记(4)u-boot的board_init()函数clk_power与gpio妙用
- 杭电ACM 1002 A + B Problem II
- CSDN博客积分规则和获取积分方法
- Emacs快捷键
- 已解决 类模板中分离时export产生的原因、作用和用法
- 一个Python的小例子来理解字典与while循环
- 杭电ACM 1064 Financial Management
- 杭电ACM 1089 A+B for Input-Output Practice (I)
- 杭电ACM 1090 A+B for Input-Output Practice (II)
- 杭电ACM 1091 A+B for Input-Output Practice (III)
- 完全图的生成树
- nyoj 35 267 表达式求值
- android error:requires compiler compliance level 5.0 or 6.0. Found '1.4' instead