#include<iostream>
usingnamespacestd;
template<classT>
classTest;//模板类前置声明
template<classT>
ostream&operator<<(ostream&out,constTest<T>&obj);//模板类友元前置声明
template<classT>
classTest
{
public:
fri..
分类:
其他好文 时间:
2014-12-08 12:31:42
阅读次数:
124
1. #define的保护
所有头文件都应该使用#define 防止头文件被多重包含(multiple inclusion),命名格式
当是:___H_
为保证唯一性,头文件的命名应基于其所在项目源代码树的全路径。例如,项目foo 中的头
文件foo/src/bar/baz.h 按如下方式保护:
#ifndef FOO_BAR_BAZ_H_
#define FOO_BAR_BAZ_H_...
分类:
编程语言 时间:
2014-10-23 12:34:25
阅读次数:
231
如何打印出字节码: 代码里做如下修改,把打印字节码的宏开关打开。 y.tab.c 18 行 #define LISTING 0 改为 #define LISTING 1 因为 PrintCode 的定义在调用之后,所以加个前置声明: 做出下修改: y.tab.c 329 ...
分类:
其他好文 时间:
2014-09-07 02:15:14
阅读次数:
190
正在看google c++编程规范,里面对头文件依赖是这么说的:使用前置声明(forward declarations)尽量减少.h文件中#include的数量。当一个头文件被包含的同时也引入了一项新的依赖(dependency),只要该头文件被修改,代码就要重新编译。如果你的头文件包含了其他头文件...
分类:
编程语言 时间:
2014-08-27 10:44:47
阅读次数:
294
虽说是编程风格指南,可是干货也不少,非常多C++的有用技术在里面。头文件通常每一个.cpp文件都相应一个.h文件;#define保护全部头文件都应该使用#define防止头文件被多重包括,为保证唯一性,头文件的命名应该根据所在项目源代码树的全部路径。能用前置声明的地方尽量不用#include当一个头...
分类:
编程语言 时间:
2014-08-25 16:23:24
阅读次数:
229
在使用Qt的时候遇到这个错误,查了一下发现,是因为我没有正确的使用前置声明。 1 #ifndef FIRSTPAGE_H 2 #define FIRSTPAGE_H 3 4 #include "ui_dialog.h" 5 //#include 6 class QWizardPage; 7 8...
分类:
其他好文 时间:
2014-08-08 12:07:45
阅读次数:
211
1.#define保护
使用#define防止头文件被多重包含。命名格式为:___H_
例如,foo中的头文件foo/src/bar/baz.h
#ifndef FOO_BAR_BAZ_H_
#define FOO_BAR_BAZ_H_
...
#endif //FOO_BAR_BAZ_H_
2.头文件依赖
使用前置声明尽量减少.h文件中#include的数量。
头文件被...
分类:
编程语言 时间:
2014-07-23 13:17:05
阅读次数:
234
链接:http://patmusing.blog.163.com/blog/static/135834960201038113714199/
分类:
编程语言 时间:
2014-04-29 09:27:46
阅读次数:
427
由于静态库是不需要导出的,所以在写QT的前置声明的时候需要说明
#if defined(QT_SHARED)
#ifdef COMMONLIB
#define COMMONLIB_EXPORT Q_DECL_EXPORT
#else
#define COMMONLIB_EXPORT Q_DECL_IMPORT
#endif
#else
#ifdef COMMONLIB
#defi...
分类:
其他好文 时间:
2014-04-28 10:47:42
阅读次数:
374