大约有 42,000 项符合查询结果(耗时:0.0195秒) [XML]
c++11 智能指针回调的经典场景 - C/C++ - 清泛网 - 专注C/C++及内核技术
c++11 智能指针回调的经典场景c++11_shared_ptr_callbackc++11 智能指针回调经典测试案例,当回调函数需要使用原对象指针时不确定原对象是否已经释放,这时必须使用智能指针了,代码如下: includ c++11 智能指针回调经典测试案例,...
std::mutex 加锁抛 _DEVICE_OR_RESOURCE_BUSY 异常 - C/C++ - 清泛网 - 专注C/C++及内核技术
std::mutex 加锁抛 _DEVICE_OR_RESOURCE_BUSY 异常device_or_resource_busy最近遇到一个崩溃,在 std::lock_guard<std::mutex> lock(mutex_); 的地方,抛出了_DEVICE_OR_RESOURCE_BUSY 的异常。最终查出原因是:同一个线程对同一个mutex二次加锁导致的 最近遇到...
C++中静态变量初始化顺序 - C/C++ - 清泛网 - 专注C/C++及内核技术
C++中静态变量初始化顺序C++中全局静态变量初始化顺序随机,是线程安全的;局部静态变量在函数调用时才初始化,非线程安全。1、C++中全局静态变量初始化顺序随机,是线程安全的,由C++标准提出,编译器实 C++中全局静态...
Google C++编码规范(Google C++ Style Guide) - C/C++ - 清泛网 - 专注C/C++及内核技术
Google C++编码规范(Google C++ Style Guide)google_cpp_style_guideGoogle C++ Style Guide是一份不错的C++编码指南,我制作了一张比较全面的说明图,可以在短时间内快速掌握规范的重点内容。不过规范毕竟是人定的,记得活学活用。Google C++ Sty...
程序崩溃时malloc/new可能导致死锁,程序卡死退不出 - C/C++ - 清泛网 - 专...
程序崩溃时malloc/new可能导致死锁,程序卡死退不出Windows Server2016服务器C++崩溃时容易不彻底,导致卡住死锁,Server2008死锁概率低一些,死锁感觉是由于malloc不可重入导致的。操作系统底层API行为可能不一致,可能有办法指定 1...
std::stringstream ss; 直接使用ss.str().c_str() 字符串指针可能导致崩溃 ...
std::stringstream ss; 直接使用ss.str().c_str() 字符串指针可能导致崩溃std::stringstream ss;const char* ch = ss str() c_str();call_func(ch);这种写法在系统内存不足时,ss会立马释放内存,字符串指针ch可能会非法访问导致崩溃。代码最好的是
std::s...
char类型移动跨平台踩过的坑 - C/C++ - 清泛网 - 专注IT技能提升
char类型移动跨平台踩过的坑CFLAG-fsigned-charchar 跨平台 arm fsigned-charchar强转int时,发现在x86平台下是按照有符号处理的,但是在ARM32下被当成了无符号导致问题,ARM64正常有符号。经调查,在PC上,char类型默认为signed-char,但是在一...
thread.join()与.detach()方法在资源释放方面的考量 - C/C++ - 清泛网 - 专注C/C++及内核技术
thread.join()与.detach()方法在资源释放方面的考量thread join()等待线程结束,释放线程占用资源。 detach()让线程自己结束并释放占用资源。注意:不能两个函数都不调,这样会导致线程虽然结束但占用的资源不释放、系统资源耗尽的...
小端模式 和 大端模式的决定因素 - C/C++ - 清泛网 - 专注C/C++及内核技术
小端模式 和 大端模式的决定因素小端模式 和 大端模式:几乎是由CPU决定的,而非OS或编译器。大端模式和小端模式的区别这里暂不讨论,这里讨论他们是由操作系统、CPU还是编译器决定的呢?
通常来讲,可能大多数人认为是...
c++ volatile关键字简析 - C/C++ - 清泛网 - 专注C/C++及内核技术
c++ volatile关键字简析volatile防范冲突,提高效率。降低CPU Cache Line锁冲突的几率。不同于普通变量在于:CPU缓存中有值的话,也得从内存中重新加载到缓存(普通变量不会);即认为寄存器值不可靠, volatile 防范冲突,提高效...