网址: http://chenuaizhang2008.blog.163.com
PR:
Alexa: 0
备案号: 粤B2-20090191
服务器IP: 115.238.126.134 浙江省杭州市 电信
描述: 我的博客 - chenuaizhang2008 - 网易博客
详细介绍
显示下一条 | 关闭 温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》 | 关闭 我的博客http://club.tech.sina.com.cn/thread-1309958-1-1.html引言我们提倡编写功能单一、结构清晰、接口简单的函数,因为过于复杂的函数会给我们带来很多问题:加深其他开发人员理解代码的难度;不方便测试人员对其编写测试用例;容易隐藏错误;出现问题难以定位……怎样的函数算是复杂的函数?哪些代码散发着“臭味”?除了依靠经验丰富的程序员的敏锐嗅觉,我们还可以通过工具,对我们的函数和代码进行度量。不像一位严格苛刻的代码检视人员,代码度量工具并不会板着脸对我们说:“嗯……这段代码糟糕透了!",它反馈给我们的是一组度量值(Metrics),怎么看待这些度量值,就因人而异了。对于某个项目组,圈复杂度(度量值中的一项,下文将给出详细解释)超过10的函数需要返工,而对另一个项目组来说,这个标准可能降到15。利用这些度量值,我们可以了解哪些方法应该返工或进行更彻底的测试、了解项目当前的状态,并跟踪软件开发的进度。下面就来看一个常用的代码度量工具——SourceMonitor。SourceMonitor1.总体介绍SourceMonitor是一款免费的软件,运行在Win在SQL Server中,全局变量是一种特殊类型的变量,服务器将维护这些变量的值。全局变量以@@前缀开头,不必进行声明,它们属于系统定义的函数,自己没有办法定义全局变量,如果有需要,可以用变通的方法,如把你的表看做全局变量。SQL Server 7.0 以前的版本全局变量是由系统提供且预先声明的变量,通过在名称前保留两个 (@@) 符号区别于局部变量。SQL Server 7.0及其以后版本 Transact-SQL 全局变量为函数形式,现在作为函数引用。 下面就是SQL Server中一些常用的全局变量。Sql代码select APP_NAME ( ) as w --当前会话的应用程序 select @@ERROR --返回最后执行的 Transact-SQL 语句的错误代码(integer) select @@IDENTITY --返回最后插入的标识值 SELECT USER_NAME() --返回用户数据库1>'nasm' 不是内部或外部命令,也不是可运行的程序1>或批处理文件。1>Project : error PRJ0019: 某个工具从以下位置返回了错误代码:"正在执行自定义生成步骤"1>生成日志保存在“file://e:\JM代码\x264_2011_09_12\x264-060805-vc6\build\win32\Debug\BuildLog.htm”1>libx264 - 1 个错误,0 个警告2>------ 已启动生成: 项目: x264, 配置: Debug Win32------2>正在链接...2>LINK : fatal error LNK1181:无法打开输入文件“.\bin\libx264.lib”2>生成日志保存在“file://e:\JM代码\x264_2011_09_12\x264-060805-vc6\build\win32\obj\x264_Debug\BuildLog.htm”2>x264 - 1 个错误,0 个警告解决方案:1. 下载nasm.exe和ndisasm.exe作为加载汇编代码用的。(xvid编码,解码);2. 假如你的VS6.0安装在C:把上面的nasm.exe和ndisasm.exe软件拷贝到:C:/Program下载ACE (http://www.cs.wustl.edu/~schmidt/ACE.html)。最好选5.5 或者5.6 版本,不要使用最新的带微版本号的版本(如5.6.9),据我所知,这个版本的borland版要求borland C++ builder 2009。把下载文件解压。我假设放D盘,则,有目录结构 D:\ACE_wrappers1.2 Openssl安装下载openssl 开发包。这个在编译ACE_SSL要用到。安装,假设装在D盘,则有目录结构 D:\OpenSSL。在D:\OpenSSL下新建目录inc32,把include目录下的文件拷贝一份过来。在D:\OpenSSL下新建目录out32。这两步不是一定要,如果编译ACE_SSL时报找不到文件,刚好是这个路径问题,再建目录。1.3 Perl安装下载ActivePerl。这个在运行MPL生成make文件要用到。如果你机器上有装perl,就不要再安装了。
2.加载工程文件,目录: ACE_wrappers\ace\ace.dsw
3.新建 config.h 文件到 ACE_wrappers\ace目录下
4.添加包含头文件声明: #include "ace/config-win32.h"
5.添加宏定义 (注意:添加在 #include 之前)
(1).#define ACE_HAS_WINNT4 0 //OS不是NT4.0或以后版本
(2).#define ACE_HAS_STANDARD_CPP_LIBRARY 1 //使用标准C++库
(3).#define ACE_HAS_MFC 1 //使用MFC库
(4).#define THR_USE_AFX 1 //使用CWinThread产生新的线程类
(5).#define ACE_USES_STATIC_MFC 1 //静态连接MFC库
(6).#define ACE_AS_STATIC_LIBS 1 //生成静态的ACE库
(7).#define ACE_NO_INLINE
“CTest<T>::~CTest” : 不允许 dllimport 函数 的定义
“CTest<T>::CTest” : 不允许 dllimport 函数 的定义
//代码如下
template<class T>
class __declspec(dllimport) CTest
{
public:
CTest();
~CTest();
};
template<class T>
CTest<T>::CTest()
{
//
}
template<class T>
CTest<T>::~CTest()
{
//
}
当要使用一个类的时候必须要有其定义,有2种方式:
1、引用其头文件,即#include "xxx.h"。这是传统的方式。
2、使用导出类。
什么是‘导出类’,很简单,使用__declspec(dllimport)定义的类即为导出类。例如:
猜你喜欢
- 网易 - 电脑网络 > 门户名站
- 中国博客网 - 电脑网络 > 门户名站
- 网易短地址 - 电脑网络 > 其他
- 赵彤博客_官方网站 - 生活服务 > 时尚美容
- Blogger: Crea - 生活服务 > 时尚美容
- 265上网导航 - 最多中 - 教育文化 > 留学出国
- 46网址导航_我的上网个性 - 商业经济 > 仪器仪表
- 369网址大全_最实用的上 - 博客论坛 > 其他
- 基于Asp平台的Blog博 - 休闲娱乐 > 其他
- 中国信息产业网-中国通信与 - 综合其他 > 历史考古
- 网易《大唐豪侠》官方网站- - 商业经济 > 工业制品
- 3456网址导航[Www. - 综合其他 > 新闻综合
- 3456网址导航[Www. - 生活服务 > 其他
- 电脑主页 - 教育文化 > 体育
- 3777网址导航-我最实用 - 商业经济 > 其他
- 265上网导航 - 最多中 - 商业经济 > 能源化工
- 网易新闻 - 生活服务 > 交通物流
- hao123--我的上网主 - 生活服务 > 交通物流
- 酷250网址大全,团购网址 - 综合其他 > 军事
- 网易科技频道_有态度的科技 - 休闲娱乐 > 星座占卦