相关疑难解决方法(0)

RAII和C++中的智能指针

在使用C++的实践中,什么是RAII,什么是智能指针,如何在程序中实现这些以及将RAII与智能指针一起使用有什么好处?

c++ smart-pointers raii

189
推荐指数
4
解决办法
6万
查看次数

什么是C++中错误处理的正确方法

一种是使用C++异常:尝试catch块.但是,当引发异常时,释放动态内存将成为一个问题.

第二种是使用C风格:errno变量

第三个是在错误时返回-1,在成功时返回0 :)

应该选择哪种方式进行中型项目?为什么?还有其他更好的方法..?

c++ error-handling

9
推荐指数
1
解决办法
1470
查看次数

C++ 11 - 区分右值指针

如何将变量区分为编译器构造的字符串?

例如,虽然右值"Hello, World"是类型const char*.const char*本身并不意味着指针不能改变.一个char* const指针不能改变,但是这不是什么编译器构成.

这是否意味着,对于任何拥有a的容器,const char*数据应该通过C++的移动语义之外的方式复制?有没有办法只移动编译器构造的字符串并保留所有其他字符串?

例如,在GCC 4.5.2,它返回类型的方法int,而不是int&被当作返回int&&.我不知道实际的标准是否应该是这样的,但这就是海湾合作委员会暂时做的事情.

编辑:澄清一下,我的意思是应该复制指针指向的实际内存.这意味着必须分配新内存,并且应将指针中的数据复制到新位置.

c++ string rvalue-reference move-semantics c++11

2
推荐指数
1
解决办法
1930
查看次数