心有

知其所以然,方可大道至简。

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

随笔分类 -  C++

1 2 下一页

摘要:随着计算机系统的快速发展,经常需要对海量数据和信息做处理,在处理这些数据时经常会遇到很大的数字,无法用int或者long等类型来存储,经常看到有人自己在写或者讨论大数相关的问题,本文描述从开源库polarssl中提取的大数bignum模块,独立出来集成到应用程序中的方法,该模块支持的大数位数不限制。 摘取出来的模块仅仅包含:bignum.c、bignum.h、bn_mul.h三个文件,简单易用。 相关代码和测试代码如下:/Files/youyou/bignum.rar1#include<string.h>2#include<stdio.h>34#include" 阅读全文
posted @ 2012-05-13 17:17 心有 阅读(7024) 评论(1) 推荐(0)

摘要:#define OFFSET(structure, member) ((int) &(((structure *)0)->member)) 阅读全文
posted @ 2006-04-27 22:13 心有 阅读(654) 评论(0) 推荐(0)

摘要:数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。指针可以随时指向任意类型的内存块。(1)修改内容上的差别char a[] = “hello”;a[0] = ‘X’;char *p = “world”; // 注意p 指向常量字符串p[0] = ‘X’; // 编译器不能发现该错误,运行时错误(2) 用运算符sizeof 可以计算出数组的容量(字节数)。sizeof(p),p 为指针得到... 阅读全文
posted @ 2006-01-07 08:59 心有 阅读(770) 评论(0) 推荐(0)

摘要:在编译源文件时,C编译器和C++编译器都会对符号(函数或变量)名作某些修正,但两者采用的修正方法不同,所以两者生成的目标文件不能互相链接。在C++中使用extern "C"可以让C++符号获得C链接特性。由于C++编译器会自动定义__cplusplus宏,所以在C语言头文件中采用这种结构可以保证无论使用何种编译器,生成的目标文件都具有C链接特性,能够与标准C编译器所生成的目标文件相... 阅读全文
posted @ 2005-12-13 12:27 心有 阅读(3980) 评论(0) 推荐(0)

摘要:1. 异常规格申明office:office" /> 现在是探索C++标准运行库和Visual C++在头文件中申明的异常支持的时候了。根据C++标准(subclause 18.6,“Exception handling” )上的描述,这个头文件申明了: l 从运行库中抛出的异常对象的基类。 l 任何抛出的违背异常规格申明的对象的可能替代物。 l ... 阅读全文
posted @ 2005-11-22 14:56 心有 阅读(1114) 评论(1) 推荐(0)

摘要:typeid操作符:它指出指针或引用指向的对象的实际派生类型。 例如: employee* pe=new manager; typeid(*pe)==typeid(manager) //true typeid可以用于作用于各种类型名,对象和内置基本数据类型的实例、指针或者引用,当作用于指针和引用将返回它实际指向对象的类型信息,甚至可用于函数名,真是太强大了。typeid的返回是type... 阅读全文
posted @ 2005-11-19 00:36 心有 阅读(1044) 评论(0) 推荐(0)

摘要:#include using namespace std;void termin_func(){ cout << "自己处理未catch到的异常,可以在这里log出异常状况!!" << endl; system("pause"); exit(0);} int _tmain(int argc, _TCHAR* argv[]){ /*Sleeper s; Watcher w; s.SleepFi... 阅读全文
posted @ 2005-11-18 23:43 心有 阅读(1313) 评论(0) 推荐(0)

摘要:[摘自ActivX Faqs]说明:只需在idl文件的类库声明中,定义枚举常量,就可以将atl常量暴露给客户程序。 例子:import "oaidl.idl";import "ocidl.idl";#include "olectl.h" [ object, uuid(D6719E8B-B2F3-49A6-B985-E30ED36E472B), dual, helpstring("Iqq... 阅读全文
posted @ 2005-11-08 10:02 心有 阅读(379) 评论(0) 推荐(0)

摘要:1、enum TT{ AA, BB, CC};相当于enum TT{ AA = 0, BB = AA + 1, CC = BB + 1};2、enum TT{ AA, BB = AA + 5, CC};相当于enum TT{ AA = 0, BB = AA + 5, CC = BB + 1};默认:后一个的值是前一个的加一 阅读全文
posted @ 2005-10-19 16:32 心有 阅读(726) 评论(0) 推荐(0)

摘要:运算符重载的规则 1.友元运算符的参数规则与类成员运算符的参数规则不同, 一员运算符必须显式地声明一个参数, 二员运算符必须显式地声明两个参数. 类成员运算符重载时, 参数中隐含了一 个this指针. 2. 重载运算符不能改变原有运算符的优先级, 结合性和操作数个数. 3. 重载运算符不能使用缺省参数. 4. 除赋值运算符外, 重载运算符可由派生类继承下去. 5. 运算符=... 阅读全文
posted @ 2005-10-14 14:45 心有 阅读(881) 评论(0) 推荐(0)

摘要:正在链接...libcpmtd.lib(xmutex.obj) : error LNK2005: "public: void __thiscall std::_Mutex::_Lock(void)" (?_Lock@_Mutex@std@@QAEXXZ) 已经在 test_smilgen.obj 中定义libcpmtd.lib(xmutex.obj) : error LNK2005: "publi... 阅读全文
posted @ 2005-09-20 10:58 心有 阅读(1676) 评论(1) 推荐(0)

摘要:// flags indicating specified attributeslong m_spflags;void set_specified(int ind) {m_spflags |= ind;}enum { SP_DUR = 1, SP_BEGIN = SP_DUR << 1, SP_END = SP_BEGIN << 1, SP_RDUR = SP_END << 1, SP_RCOU... 阅读全文
posted @ 2005-09-16 15:15 心有 阅读(471) 评论(0) 推荐(0)

摘要:inline TCHAR GenerateCharacter() const { switch (rand() % 3) { case 0 : return( 'a' + ( rand() % 26 ) ); case 1 : return( 'A' + ( rand() % 26 ) ); default: return( '0' + ( rand() % 10 ) ); } } 阅读全文
posted @ 2005-09-15 15:44 心有 阅读(304) 评论(0) 推荐(0)

摘要:CRuntimeClass* AfxClassForName(LPCTSTR pszClass){ AFX_MODULE_STATE* pModuleState = AfxGetModuleState(); AfxLockGlobals( 0 ); for ( CRuntimeClass* pClass = pModuleState->m_classList ; pClass != NULL ... 阅读全文
posted @ 2005-09-15 14:56 心有 阅读(671) 评论(0) 推荐(0)

摘要:基类的析构函数声明为virtual后才会依继承层次调用各自的析构函数。 阅读全文
posted @ 2005-09-15 14:30 心有 阅读(279) 评论(0) 推荐(0)

摘要:在Statistics.h的最后添加“extern CStatistics Statistics;”在Statistics.cpp的最前面添加“CStatistics Statistics;”在别的c文件中#include "Statistics.h"就可直接使用Statistics全局变量了,真方便。 theApp就是这样声明的。 阅读全文
posted @ 2005-09-15 14:27 心有 阅读(398) 评论(0) 推荐(0)

摘要:本文将介绍一些常用数据类型的使用。 我们先定义一些常见类型变量借以说明 int i = 100;long l = 2001;float f=300.2;double d=12345.119;char username[]="程佩君";char temp[200];char *buf;CString str;_variant_t v1;_bstr_t v2; 一、其它数据类型转换为字符串 短整型(i... 阅读全文
posted @ 2005-09-13 09:00 心有 阅读(346) 评论(0) 推荐(0)

摘要:用VS2003做ATL ActiveX开发,遇到以下问题。步骤:1、利用VC7的“ATL 项目”向导建立的ActiveX工程,(注意:“属性化”选项默认是选中的,保持不变)2、在工程中添加“ATL 控件”3、给已添加的ATL 控件添加一个BSTR类型的属性4、编译控件5、Debug控件,在调用控件的BSTR属性时出错,跟踪后错误断点出现在atlcom.h文件的//If InternalAddRef... 阅读全文
posted @ 2005-07-16 07:51 心有 阅读(909) 评论(0) 推荐(0)

摘要:#include #include main(int argc, char *argv[], char *env[]) { int i; printf("These are the %d command- line arguments passed to main:\n\n", argc); ... 阅读全文
posted @ 2005-07-08 09:22 心有 阅读(277) 评论(0) 推荐(0)

摘要:C/C++头文件一览 C、传统 C++ #include //设定插入点#include //字符处理#include //定义错误码#include //浮点数处理#include //文件输入/输出#include //参数化输入/输出#include //数据流输入/输出#include //定义各种数据类型最值常量#inc... 阅读全文
posted @ 2005-07-08 07:31 心有 阅读(368) 评论(0) 推荐(0)

1 2 下一页