C/C++
中原游侠
好好学习,天天向上。
展开
-
char[] 转换为 string 和 string 转换为 char[]
#include #include using namespace std;int main(){// char[] 转换为 stringchar value[] = "hello";string s;// 从s的开始处插入字符数组s = s.insert(0, value);cout << s.length() << endl;cout << s << endl;// string 转换为 ch原创 2014-08-13 09:44:16 · 666 阅读 · 0 评论 -
C++ 实现单例模式
Code#pragma once#include <windows.h>/*使用临界区来枷锁和解锁*/class LockBase{private: friend class Singleton; CRITICAL_SECTION cs; void lock() { EnterCriticalSection(&cs); } v原创 2015-08-16 16:16:03 · 702 阅读 · 0 评论 -
lib和dll的区别
前言当使用visual studio生成静态库lib时,会生成一个lib文件,这个lib文件将记录函数的索引和实现。当使用visual studio生成动态库dll时,会生成一个dll文件和一个同名的lib文件。lib一般是一些索引信息,记录了dll中函数的入口和位置,dll中是函数的具体内容。区别 (1)lib是编译时用到的,dll是运行时用到的。如果要完成源代码的编译,只需要lib;如果要使原创 2015-07-23 19:24:40 · 572 阅读 · 0 评论 -
文件重定向
文件重定向 当你测试程序时,反复从键盘敲入,是非常乏味和低效的,这个时候就可以使用文件重定向机制,这种机制允许我们将标准输入和标准输出与命名文件关联起来。看一个简单的C++程序#include <iostream>#include <string>using namespace std;int main(){ string word; while (cin >> word)原创 2015-07-27 19:23:33 · 782 阅读 · 0 评论 -
error LNK2026: 模块对于 SAFESEH 映像是不安全的
转载自:http://www.cnblogs.com/hanxi/archive/2012/06/10/2544230.html今天使用VS2012遇到一个问题:”error LNK2026: 模块对于 SAFESEH 映像是不安全的”解决方法: 打开该项目的“属性页”对话框。 单击“链接器”文件夹。 单击“命令行”属性页。 将 /SAFESEH:NO 键入“附加选项”框中,然转载 2015-05-19 09:51:18 · 1234 阅读 · 0 评论 -
VS2012 外接程序”VMDebugger”未能加载或导致异常了
问题:同时安装了vs2012和VMware,打开vs2012出现如下消息框 解决方法: 打开注册表,找到HKEY_LOCAL_MACHINE → SOFTWARE →Wow6432Node →Microsoft →VisualStudio →11.0 →AddIns→VMDebugger.Connect双击打开,找到LoadBehavior,选中LoadBehavior,点击右键,选中修改,在转载 2015-05-21 16:45:01 · 1749 阅读 · 0 评论 -
堆和栈的区别
一预备知识程序的内存分配一个由CC编译的程序占用的内存分为以下几个部分例子程序二堆和栈的理论知识1 申请方式2 申请后系统的响应3 申请大小的限制4 申请效率的比较5 堆和栈中的存储内容6 小结一、预备知识—程序的内存分配一个由C/C++编译的程序占用的内存分为以下几个部分: 1、栈区(stack): 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似转载 2015-04-15 15:46:35 · 413 阅读 · 0 评论 -
C++调用C的一般写法
参考文章一:http://blog.163.com/sean_1010/blog/static/11080322200952633111975/ 参考文章二:http://songpengfei.iteye.com/blog/1100239C++调用C的一般写法1.C的头文件// module_c.h#ifndef MODULE_C_H#define MODULE_C_H#ifdef __cp原创 2015-03-24 09:41:10 · 563 阅读 · 0 评论 -
gcc与g++的区别
gcc和g++都是GNU的一个编译器; 这两者的区别: - 1.从源文件上看,对于文件后缀(扩展名)为.c的test.c文件,gcc会把它看成是C程序,而g++则会把它看成是C++程序;而对于文件后缀(扩展名)为.cpp的test.cpp文件,gcc和g++都会把它看成是C++程序;注意:虽然C++是C的超集,但是两者在语法要求上还是有区别的,C++的语法要求更严谨一些; - 2.从编译器角度转载 2015-03-24 09:30:27 · 498 阅读 · 0 评论 -
extern "C"的用法解析
原文地址:http://www.cnblogs.com/rollenholt/archive/2012/03/20/2409046.htmlextern “C”的用法解析1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地转载 2015-03-23 21:01:59 · 499 阅读 · 0 评论 -
C++慎用保留字
C++慎用保留字当我编译QGIS1.7.1时,出现如下错误: 定位到:D:\QGIS\qgis-1.7.1\src\python\qgspythonutils.h 的 46行,发现形参是interface 而在c:\Program Files\Microsoft SDKs\Windows\v6.0A\Include\ObjBase.h中可以看到interface 其实就是struct,故而出错!原创 2015-03-23 20:13:11 · 846 阅读 · 0 评论 -
C++ 调用 exe
参考文章一:http://blog.csdn.net/wuyingfits/article/details/7914713 参考文章二:http://blog.csdn.net/gameboy12615/article/details/5326517C++ 调用 exe根据项目需求,调用exe程序需要满足: - 显示该exe程序的窗口 - 控制主程序来等该exe程序的结束 满足这两个条件,选原创 2015-03-23 19:57:42 · 1081 阅读 · 0 评论 -
C++计时器
//Windows系统下time(),clock(),timeGetTime(),GetTickCount(),QueryPerformanceCounter()来计时#include #include #include //time_t time() clock_t clock() #include转载 2014-11-07 09:44:20 · 852 阅读 · 0 评论 -
C++ 运算结果出现 1.#IND, 1.#INF, nan, inf 原因
进行浮点数编程时,如果没有注意,常常会出现输出类似 1.#IND, 1.#INF 或者 nan, inf 之类奇怪的输出。这通常隐含了浮点数操作的异常。特殊浮点数的含义1.#INF / inf:这个值表示“无穷大 (infinity 的缩写)”,即超出了计算机可以表示的浮点数的最大范围(或者说超过了 double 类型的最大值)。例如,当用 0 除一个整数时便会得到一个1.#INF转载 2014-11-10 18:26:36 · 23278 阅读 · 0 评论 -
Vistual Studio 筛选器
初认识使用Vistual Studio开发项目时,有时源码文件过多,想按功能进行分类管理,这个时候就可以使用“筛选器(filter)”。添加筛选器很简单,在项目上右键单击,选择“添加 | 新建筛选器”,然后命名就可以了。之后向筛选器中添加文件。注意筛选器,只不过是个逻辑目录。只是方便我们分类管理而已,默认情况下新建的文件均在同一个文件夹下。贪心如果不仅希望能够分类管理文件,还希望这些源码文件能存储在原创 2015-08-05 08:42:07 · 2153 阅读 · 0 评论