首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

深入理解string如何高效地使用string

但是string的常用性并不意味着它的简单性,而且我认为,正是由于string的频繁使用才会促使其设计人员在string的设计上花大量的功夫。...string interning的基本前提是string的恒定性(immutability),即string一旦被创建将不会改变。我们就先来谈谈string的恒定性。...三、      证明string垮AppDomain的恒定性 在写这篇文章的时候,我对如何证明string跨AppDomain的interning,想了好几天,直到我偶然地想到了为实现线程同步的lock...为了进一步印证我们的结论,我们是使两个MarshalByRefObject对象的stringLockHelper字段具有不同的值,看看结果又如何。...所以我们在使用锁的时候,除非万不得已,切忌对一个string进行加锁。 六、      如何高效地使用string 下面简单介绍一些高效地使用string的一些小的建议: 1.

690110

如何把std::string当char *使用?

std::string使用很方便,但有时会碰到这样的问题,比如我们有一个结构体,内容如下所示: typedef struct _datainfo {     int i;     unsigned time...char buf[512]; string strData; memcpy(char*(buf), (char *)&stInfo, sizeof(stInfo)); strData = string(...(char *)buf); 其实我们忽略了一点,就是string也是用char *来保存数据内容的,而c_str()接口就返回了这个头指针。...与普通的字符串不同的是,它的长度并不是以/0结尾去判断的,而是通过成员变量里的size决定的,知道了这一样,我们就可以把string当char *来使用了。...(stInfo)); 这样就可以实现了,知道了这一点,我们就可以用string干更多的事情,要注意的就是在每次内容修改之前,要进行resize成新的大小。

52930
领券