nnhy
|
be8266d7f4
|
修改时拷贝
|
2016-03-31 04:47:34 +00:00 |
nnhy
|
a7558506e8
|
默认空字符串,使用内部数据区
|
2016-03-31 04:26:17 +00:00 |
nnhy
|
af1f22406f
|
修正数字以十六进制显示的BUG
|
2016-03-21 02:41:37 +00:00 |
nnhy
|
165c6deefd
|
如果不是可写,在扩容检查时,也要进行扩容,避免内部不可写数据被修改
|
2016-03-21 01:24:23 +00:00 |
nnhy
|
16c562f249
|
有可能当前用的内存不是内部内存,然后要分配的内存小于内部内存,则直接使用内部,不需要释放
|
2016-03-19 08:38:51 +00:00 |
nnhy
|
2b1d195111
|
IP字符串解析为IPAddress成功,单一测试通过
|
2016-03-19 08:22:09 +00:00 |
nnhy
|
429248b026
|
增加String::Split,采用迭代式写法
|
2016-03-19 06:54:14 +00:00 |
nnhy
|
32c9e770ab
|
String只需要重载一个Copy即可
修正GCC编译的一个错误
|
2016-03-17 14:31:59 +00:00 |
nnhy
|
deffe20244
|
暂时不用SetBuffer
|
2016-03-15 06:23:31 +00:00 |
nnhy
|
102b42b33b
|
拷贝字符串到目标字符指针时,长度可能是-1,需要考虑
|
2016-03-14 04:57:34 +00:00 |
nnhy
|
d1f6245d9b
|
所有NULL更换为nullptr,GCC要求更严格。
Sys.h头文件不再包含string.h,禁止SmartOS除了Type和String以外的地方使用内存管理函数
|
2016-03-14 04:28:04 +00:00 |
nnhy
|
8cf3a1e7d9
|
字符串头文件不能叫String.h,否则跟gcc内部的string.h冲突,倒置无法包含
|
2016-03-14 03:51:32 +00:00 |
nnhy
|
1b26bdb65e
|
废弃ByteArray的拷贝构造函数,以免引起误解
|
2016-03-11 16:54:44 +00:00 |
nnhy
|
19ac9be732
|
完善字符串move逻辑
确保字符串拷贝进出都有零结束符
|
2016-03-11 16:05:46 +00:00 |
nnhy
|
1f448d6eac
|
设置数组长度。改变长度后,确保最后以0结尾
|
2016-03-11 15:25:59 +00:00 |
nnhy
|
992b979c59
|
String.Clear()导致错误释放了内存
|
2016-03-11 15:13:11 +00:00 |
nnhy
|
5e11ef18ce
|
废弃StringHelper,避免连加的时候出现太多碎片对象
|
2016-03-11 14:53:54 +00:00 |
nnhy
|
89a2f6dcd2
|
String不需要释放内存,由Array统一释放
|
2016-03-11 13:56:41 +00:00 |
nnhy
|
ee50d7f033
|
字符串继承自Buffer
|
2016-03-11 08:57:17 +00:00 |
Stone
|
eba9043046
|
除了Buffer其它任何地方不得使用memcpy/memset
|
2016-03-11 04:39:30 +00:00 |
nnhy
|
86c6535448
|
修正一个字节对齐的BUG,各个Config尽量用4字节对齐,特别是含有字符串String的类
MDK编译String::copy的时候,使用了 LDR R0, R1, [R5, 0x04]指令,而这个指令要求4字节对齐。
|
2016-03-10 10:02:30 +00:00 |
nnhy
|
6c7aff547b
|
整个SmartOS禁止使用strcpy/strncpy
|
2016-03-10 09:12:56 +00:00 |
nnhy
|
a25c30c83d
|
通过单元测试发现字符串拷贝时的一个BUG
|
2016-03-10 08:55:38 +00:00 |
nnhy
|
adeb9955cb
|
字符串设置单元测试完成,GetBytes/ToHex
|
2016-03-10 08:26:17 +00:00 |
nnhy
|
3c4dd0667e
|
完成构造函数测试
|
2016-03-10 07:03:35 +00:00 |
nnhy
|
5c31b3d483
|
字符串构造函数单元测试完成,测试通过
|
2016-03-10 03:45:29 +00:00 |
Stone
|
3109009b80
|
增强对数字转十六进制字符串的支持
|
2016-03-09 05:52:31 +00:00 |
Stone
|
386602e27c
|
字符串转Hex,要两个字符的大写
|
2016-03-09 03:52:07 +00:00 |
nnhy
|
11ec1084fd
|
ulong => UInt64
_REV/_REV16 独立汇编实现,不依赖固件库
|
2016-03-07 10:46:10 +00:00 |
nnhy
|
3bb6e5fd7f
|
其实这里可以不用拷贝,内部直接使用这个指针,等第一次修改的时候再拷贝,不过那样过于复杂了
|
2016-03-06 12:13:05 +00:00 |
nnhy
|
402c24c7f5
|
!!!SmartOS在网关C上可启动,指示灯闪烁,DHCP失败
字符串增加标识,识别是内部缓冲区还是外部缓冲区,析构时以此为依据执行销毁
|
2016-03-06 11:26:05 +00:00 |
nnhy
|
b72139033f
|
内存缓冲区Buffer作为最基础的内存数据包,只包含指针和长度!
Array作为变长内存数据包,可扩大
ByteArray直接继承自Array,脱离模板TArray
|
2016-03-06 11:01:01 +00:00 |
nnhy
|
6c55562e70
|
使用Lamda实现Split,编译通过,未测试
|
2016-03-05 12:15:45 +00:00 |
nnhy
|
f78e0e4263
|
增加十六进制转字节数组的ToHex
|
2016-03-05 12:05:17 +00:00 |
nnhy
|
3c71960517
|
增加GetBytes和ToArray
|
2016-03-05 11:49:09 +00:00 |
nnhy
|
8a71c880ac
|
!!!独立String,增强字符串连接等功能。
为了编译通过,注释了一些其它类的功能代码,慎用该版本!
|
2016-03-05 06:58:12 +00:00 |
nnhy
|
03c2b61dbf
|
删除以后不大可能用得到的内存管理和字符串管理
|
2015-10-28 13:55:42 +00:00 |
nnhy
|
540d38da36
|
|
2015-06-26 13:53:56 +00:00 |
nnhy
|
2f472bd894
|
移植MFC的CString,难以编译通过,大量宽字符函数不存在。保留代码作为参考,不使用
|
2015-06-26 12:57:26 +00:00 |