预编译头编译链接过程

预编译头编译链接过程

C++ 4年前 (2014-08-29) 浏览: 20 评论: 0

预编译头文件 在编写程序的时候,有一些头文件被许多文件用到。例如:windows.h这样的系统头文件。如果不采用预编译头文件,那么每个包含windows.h的文件都需要编译这个文件。这将会增加编译时间。正是为了解决这个问题,Microsoft Visual C++提出了预编译头文件的解决方法。 所谓预编译头文件,即将一些指定的头文件预先编译成二进制文件,为了与其他二进制文件区别开来。预编译的头文件

VS2012-2005版本.sln文件头部标志信息

VS2012-2005版本.sln文件头部标志信息

C++ 4年前 (2014-05-20) 浏览: 26 评论: 0

高版本的VS能够对低版本的VS解决方案进行转换后打开,而低版本的VS则不能直接打开高版本的VS解决方案,其实就解决方案中某个工程来说,各个版本的编译器并没有差别。 所以在需要低向高转换的时候,可以尝试一下修改.sln解决方案文件,或许问题就解决了。 Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio

一个循环队列帧完整性匹配算法

一个循环队列帧完整性匹配算法

C++ 5年前 (2014-04-27) 浏览: 21

今天早上思考了下关于循环队列中帧匹配的问题,以前在其他项目中,都是用了两个线程的单生产者-单消费者模式,但是有一定的弊端,那就是效率相对来说不是太高,而且线程同步也相对复杂。以下是今天早上思考的结论,算法时间复杂度O(n),而且上锁,解锁的次数大幅度降低。 看似一段简单的代码,个人觉得还是比较有技巧的,重点在于每次读取两个字节,而只处理一个字节。以帧头FB,FD,帧尾为FC,FE(都为16进制)为

为shared_ptr中对象增加安全的强有力技术

为shared_ptr中对象增加安全的强有力技术

C++ 5年前 (2014-04-16) 浏览: 26

shared_ptr<>是在堆中对象的wraper。有时候,由于历史原因或者库接口原因,不支持智能指针参数,我们需要从shard_ptr中提取出原始指针,但是原始指针就会增加不安全因素,因为说不定就在某个函数内被delete,然而其他地方仍旧使用该内存区,导致内存泄露。 #include &lt;boost/shared_ptr.hpp&gt; #include &am

using namespace ***与 using ***区别

using namespace ***与 using ***区别

C++ 5年前 (2014-04-15) 浏览: 13

以boost为例子,使用代码来展示区别 在使用using ***时 using boost::asio::ip::tcp; 则使用tcp下的命名空间,就编程时可以简化使用 tcp::resolver resolver(io_service); tcp::resolver::query query(argv[1], "daytime");     如果使用using n

error C4996解决办法

error C4996解决办法

C++ 5年前 (2014-04-14) 浏览: 23

错误 1 error C4996: 'ctime': This function or variable may be unsafe. Consider using ctime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 1.原因 原因是Visual C++

双缓冲循环队列DLL

双缓冲循环队列DLL

C++ 5年前 (2014-04-07) 浏览: 15

周末无事,写了个循环队列的dll,一方面考虑到后面项目中需要这个数据结构,另外很久没写程序了,就当练下手。 这个循环队列采用的是双缓冲,按块复制,相对来说效率还是比较高,先给出头文件: #pragma once #ifndef CIRCULAR_QUEUE #define CIRCULAR_QUEUE #ifdef DLL_IMPLEMENT     &nb

切换注册

登录

忘记密码 ?

切换登录

注册

扫一扫二维码分享