摘要:
/** * 13球称重问题java实现 * <p>copyright: copyright (c) 2004</p> * @author treerot * @version 1.0 */public class thirteenball { private static class ball { private int weight; public int getwe......
摘要:作者:曹江华 ipv6(internet protocol version 6)协议是取代 ipv4 的下一代网络协议,它具有许多新的特性与功能。由 ip 地址危机产生和发展起来的 ipv6 作为下一代互联网协议已经得到了各方的公认,未来互联网的发展离不开ipv6的支持和应用。ipv6 协议和 ipv4 协议不论在结构上还是系统工具的使用上都不大相同。 linux 是所有操作系统中最先支持 ipv......
Traits技术初探概述:traits是一种特性萃取技术,它在generic programming中被广泛运用,常常被用于使不同的类型可以用于相同的操作,或者针对不同类型提供不同的实现.traits在实现过程中往往需要用到以下三种c++的基本特性: 【程序编程相关:
远程登录(rlogin)--网络大典】 【推荐阅读:
编写跨平台Java程序需注意】enum 【扩展信息:
远程网络监控管理信息基础(RMON)--】 typedef template (partial) specialization 其中: enum用于将在不同类型间变化的标示统一成一个,它在c++中常常被用于在类中替代define,你可以称enum为类中的define; typedef则用于定义你的模板类支持特性的形式,你的模板类必须以某种形式支持某一特性,否则类型萃取器traits将无法正常工作.看到这里你可能会想,太苛刻了吧?其实不然,不支持某种特性本身也是一种支持的方式(见示例2,我们定义了两种标示,__xtrue_type与__xfalse_type,分别表示对某特性支持与不支持). template (partial) specialization被用于提供针对特定类型的正确的或更合适的版本. 借助以上几种简单技术,我们可以利用traits提取类中定义的特性,并根据不同的特性提供不同的实现.你可以将从特性的定义到萃取,再到traits的实际使用统称为traits技术,但这种定义使得traits显得过于复杂,我更愿意将traits的定义限于特性萃取,因为这种定义使得traits显得更简单,更易于理解,^_^. 举例: 上面提到过,traits可被用于针对不同类型提供不同的实现,那么下面就举两个例子来说明如何实现这一点. example 1: 假定我们需要为某个类设计一个可以对所有类型(包括普通的int/long...,提供了clone方法的复杂类型ccomplexobject,及由该类派生的类)进行操作的函数clone,下面,先用oo的方法来考虑一下解决方案.看到前面的条件,最先跳进你脑子里的肯定是interface,pure virtual function等等.对于我们自己设计的类ccomplexobject而言,这不是问题,但是,对于基本数据类型呢?还有那些没有提供clone方法的复杂类型呢?(这时候你可能会想,要是java该多easy,所有类都默认从object派生,而object已提供了一个默认的clone方法,但是,要使类真正支持clone,还必须implements cloneable,所以,同样也不能避免这里遇到的麻烦). 下面是一个可能的解决方案: template <typename t, bool isclonable> class xcontainer { ... void clone(t* pobj) { ...
下一页 摘要:前一段时间我单位的几十台工业机需要同步校时, 故去察看了rfc868, 我就试编了一个获得网络时间的小程序, 大家可以借鉴到自己的同步校时程序, 只是试验,所以程序结构并不严谨, 过一段时间我会把服务器段的代码贴出,今天先发布客户端:#pragma warning(disable: 4530)#pragma warning(disable: 4786)
#include <iostream......