-
-
6由于需要把自己写的三个hash算法类库化,想生成Dll以供后期程序调用,经过一翻测试,发现和C生成DLL还是有差别,静态链结没有问题,一但想动态加载dll的时候,就会发现程序崩溃,经过调试,发现能取得dll的函数,返回的接口也是正常的,调用算法方法时正常,但在调用toSring方法时,就挂了,显示std::string的 Alloc类调用失败,我去,难道不能动态加载,只能静态用? 通过使用Depend软件查看dll的关联性,还发现一个错误,提示关联的msvcp90.dll丢失,
-
8无聊,写了一下unicode的string实现。 //删除,插入,查找,替换,取子串, Trim, 迭代器 // 还差 替换和 char转换unicode, char或许是utf-8, int 和保留功能有点重合 class String { typedef struct _format_args { int prec; int width; wchar_t fill; }_fargs; public: String() :_size(0), _capacity(_size+1), _data(new wchar_t[_capacity]) { *_data = L'\0'; } // 容器需要 String(const String& rhs) :_size(rhs._size), _capacity(_size+1), _data(new wchar_t[_capacity]) { _copy(_data, rhs._data, _size); } String(const wchar_t *str) { for(_size = 0; str[_si