C++
文章平均质量分 65
zhanglvmeng
这个作者很懒,什么都没留下…
展开
-
c++学习之【引用】
今天需要用C++开发项目,遇到了引用部分。以下是百度上关于引用的一篇文章,不错,值得研究一下。引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确、灵活地使用引用,可以使程序简洁、高效。 引用简介 引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。 引用的声明方法:类型标识符 &引用名=目标变量名; 【例1】:int a; int转载 2013-04-02 15:01:08 · 295 阅读 · 0 评论 -
C++中的析构函数及其数组(Vector)中存放指针的问题
转载地址 : http://blog.csdn.net/hao80879/article/details/8930200当对象的指针或者是引用超出作用域时,不会运行析构函数,只有删除指向动态分配对象的指针或者是实际对象(注意不是对象的引用)超出作用域,才运行析构函数 合成的析构函数:按照类中声明次序的逆序撤销成员(注意撤销的是非Static的成员变量) 合成的析构函数并不删转载 2013-07-14 11:32:52 · 527 阅读 · 0 评论 -
c++ vs2010下安装curl
转自:http://theetrain.ca/tech/installing-curl-using-visual-studio-2010-beginners-guide/Installing cURL using Visual Studio 2010 – Beginner’s GuidecURL is a library used to allow C++ applicat转载 2013-06-19 14:58:29 · 771 阅读 · 0 评论 -
c字符串、string对象、字符串字面值的区别
转载地址:http://blog.csdn.net/shimachao/article/details/6897899字符串的连接:1.c++中string可以替代c中的char数组且前者用起来更方便。连接两个string对象只需用'+';c字符串是用char数组实现的。以下都称c字符串为char数组例如:string s1="hello",s2="world"转载 2013-06-29 16:30:37 · 373 阅读 · 0 评论 -
C/C++中如何获取数组的长度?
C、C++中没有提供 直接获取数组长度的函数,对于存放字符串的字符数组提供了一个strlen函数获取长度,那么对于其他类型的数组如何获取他们的长度呢?其中一种方法是使 用sizeof(array) / sizeof(array[0]), 在C语言中习惯上在 使用时都把它定义成一个宏,比如#define GET_ARRAY_LEN(array,len) {len = (sizeof(array)转载 2013-06-30 09:59:30 · 530 阅读 · 0 评论 -
c++ 中vector 跟数组的区别
std::array is just a class version of the classic C array. That means its size is fixed at compile time and it will be allocated as a single chunk (e.g. taking space on the stack). The advantage it翻译 2013-06-29 23:49:20 · 642 阅读 · 0 评论 -
C++ 纯虚函数
本文转自:http://www.cnblogs.com/fzhe/archive/2013/01/02/2842513.htmlC++虚函数与纯虚函数的区别今天在做一道面试题的时候遇到一个纯虚函数的概念,就翻了下书,查资料,对比下虚函数,现在整理一下和大家分享:什么是虚函数?那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是转载 2013-07-18 12:14:48 · 345 阅读 · 0 评论 -
C++的头文件和实现文件分别写什么
本文转自: http://www.cnblogs.com/ider/archive/2011/06/30/what_is_in_cpp_header_and_implementation_file.html在C++编程过程中,随着项目的越来越大,代码也会越来越多,并且难以管理和分析。于是,在C++中就要分出了头(.h)文件和实现(.cpp)文件,并且也有了Package的概念。转载 2013-07-02 20:56:45 · 299 阅读 · 0 评论 -
c++ 字符类型总结区别wchar_t,char,WCHAR
1.区别wchar_t,char,WCHAR ANSI:即 char,可用字符串处理函数:strcat( ),strcpy( ), strlen( )等以str打头的函数。 UNICODE:wchar_t是Unicode字符的数据类型,它实际定义在里: typedef unsigned short wchar_t; 另外,在头文件中有这样的定义:typedef转载 2013-07-03 08:55:05 · 359 阅读 · 0 评论 -
谈C/C++的浮点数在内存中的存储方式
该部分转自 http://www.cnblogs.com/dolphin0520/archive/2011/10/02/2198280.html C/C++浮点数在内存中的存储方式 任何数据在内存中都是以二进制的形式存储的,例如一个short型数据1156,其二进制表示形式为00000100 10000100。则在Intel CPU架构的系统中,存放方式为转载 2013-07-19 19:15:17 · 296 阅读 · 0 评论 -
c++ serial communication example
转载地址: https://gist.github.com/yoggy/3323808SerialPort.cpp#include "StdAfx.h" #include #pragma comment(lib, "Setupapi.lib") #include "SerialPort.h" SerialPort::SerialPort(void) : end_of_line转载 2013-07-19 11:13:50 · 866 阅读 · 0 评论 -
C++ 串口通信
本文转自 : http://blog.csdn.net/luxiaoxun/article/details/7646348串口介绍串口叫做串行接口,也称串行通信接口,按电气标准及协议来分包括RS-232、RS-422、RS485、USB等。 RS-232-C、RS-422与RS-485标准只对接口的电气特性做出规定,不涉及接插件、电缆或协议。USB是近几年发展起来的新型转载 2013-07-23 10:59:27 · 680 阅读 · 0 评论 -
How to use Boost in Visual Studio 2010
C++ 调用boost步骤: 第一步、配置boost http://stackoverflow.com/questions/2629421/how-to-use-boost-in-visual-studio-2010While Nate's answer is pretty good already, I'm going to expand on it more sp原创 2013-05-27 14:11:10 · 737 阅读 · 0 评论 -
vs2010 常用快捷键
2、注释与去掉注释功能。 编辑.注释选定内容 Ctrl + K,Ctrl + C 使用编程语言的正确注释语法将代码的当前行标记为注释。编辑.取消注释选定内容 Ctrl + K,Ctrl + U 从代码的当前行中移除注释语法。原创 2013-07-26 09:47:54 · 352 阅读 · 0 评论 -
c++ boost serial port communication
文章转自:http://blog.csdn.net/zhaodan19861107/article/details/7766338用ASIO读写串行口ASIO不仅支持网络通信,还能支持串口通信。要让两个设备使用串口通信,关键是要设置好正确的参数,这些参数是:波特率、奇偶校验 位、停止位、字符大小和流量控制。两个串口设备只有设置了相同的参数才能互相交谈。ASI转载 2013-07-26 16:07:26 · 1114 阅读 · 0 评论 -
Sending raw data with write() in boost::asio
The question is:What I want to do is write a function that will send a message consisting of the following structure:2 bytes of an unsigned integer (uint16_t) for an opcode all bytesal原创 2013-07-26 18:50:53 · 530 阅读 · 0 评论 -
C++:复制构造函数
文章作者:姜南(Slyar) 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。这个问题不是疑问了,查了一下国外网站,总结一下。假设Person是一个类,复制构造函数的调用会在以下几种情况下发生:1、对象在创建时使用其他的对象初始化Person p(q); //此时复制构造函数被用来创建实例pPerson p = q; //此时复原创 2013-07-14 09:56:20 · 519 阅读 · 0 评论 -
C++中复制构造函数与重载赋值操作符的深入分析
转载地址 : http://blog.chinaunix.net/uid-20937170-id-3289184.html 在C++中复制控制是一个比较重要的话题,主要包括复制构造函数、重载赋值操作符、析构函数这三部分,这三个函数是一致的,如果需要手动定义了其中了一个,那么另外的两个也需要定义,通常在存在指针或者前期相关操作的情况下,都需要手动的定义。复制构造函数与重载赋值操作符实现的转载 2013-07-14 11:02:47 · 444 阅读 · 0 评论 -
c++ 标准库 bitset
C++标准库:使用bitset简化位处理转自:http://cpp.ezbty.org/content/science_doc/c%E6%A0%87%E5%87%86%E5%BA%93%EF%BC%9A%E4%BD%BF%E7%94%A8bitset%E7%AE%80%E5%8C%96%E4%BD%8D%E5%A4%84%E7%90%86由 easyeagel 于 星期五, 2转载 2013-04-03 16:05:36 · 325 阅读 · 0 评论 -
c++ 标准库 string 类型和字符串字面值
因为历史原因以及为了与 C 语言兼容,字符串字面值与标准库 string 类型不是同一种类型。这一点很容易引起混乱,编程时一定要注意区分字符串字面值和 string 数据类型的使用,这很重要。区别一:额~~~C字符串是const char * 类型,而string是标准库类型,当你在操作文件时,这种区别就很明显了,打开文件时的文本名一定是const char*类原创 2013-04-03 10:16:38 · 490 阅读 · 0 评论 -
c++之迭代器 Iterators
迭代器是一种检查容器内元素并遍历元素的数据类型。1、每种容器类型都定义了自己的迭代器类型,如 vector: vector::iterator iter; 该语句定义了一个名为 iter 的变量,它的数据类型是 vector 定义的 iterator 类型。每个标准库容器类型都定义了一个名为 iterator 的成员,这里的 iterator 与迭代器实际类型的含义相同。2、原创 2013-04-03 14:31:10 · 521 阅读 · 0 评论 -
c++ 之string
当进行 string 对象和字符串字面值混合连接操作时,+ 操作符的左右操作数必须至少有一个是 string 类型的。一个比较典型但易混的例子: string s5 = s1 + ", " + "world"; // ok: each + has string operand在对 s5 进行初始化时,子表达式 s1 + ", " 将返回一个新 string 对象,后者再和字原创 2013-04-03 11:28:15 · 319 阅读 · 0 评论 -
C++ 之vector
一、vector 不是一种数据类型,而只是一个类模板,可用来定义任意多种数据类型。vector 类型的每一种都指定了其保存元素的类型。因此,vector 和 vector 都是数据类型。二、若要创建非空的 vector 对象,必须给出初始化元素的值。当把一个 vector 对象复制到另一个 vector 对象时,新复制的 vector 中每一个元素都初始化为原创 2013-04-03 13:58:30 · 385 阅读 · 0 评论 -
c++ 之数组
1、数组的维数必须用值大于等于1的常量表达式定义(第 2.7 节)。此常量表达式只能包含整型字面值常量、枚举常量(第 2.7 节)或者用常量表达式初始化的整型const 对象。非 const 变量以及要到运行阶段才知道其值的 const 变量都不能用于定义数组的维数。2、数组初始化在函数体外定义的内置数组,其元素均初始化为 0。在函数体内定义的内置数组,其元素无初始化。原创 2013-04-07 15:51:32 · 316 阅读 · 0 评论 -
c++ 之多维数组
1、严格地说,C++没有多维数组,通常所指的多维数组其实就是数组的数组。2、二维数组举例:int ia[3][4] = { /* 3 elements, each element is an array of size 4 */ {0, 1, 2, 3} , /* initializers for row indexed by 0 */{4, 5, 6, 7} , /* initi翻译 2013-04-08 15:05:12 · 403 阅读 · 0 评论 -
C++ 调用Boost 简单案例
目前想做跨平台的c++程序,想到了用Boost。由于本人刚刚开始用C++,中途遇到不少困难,再次留下脚印。首先添加boost库: VS2010的改变:工具>选项中的VC++目录编辑功能已被否决这里参见了 http://hi.baidu.com/erinhust/item/ffe71e56cc6c7b4f4eff2094 VS2010的改变:工具>选项中的VC++目录编原创 2013-05-21 14:20:30 · 687 阅读 · 0 评论 -
c++ string function
1、处理string对象的字符常用方法如下: isalnum():判断字符是否是字母或数字; isalpha():判断字符是否是字母; iscntrl():判断字符是否是控制字符; isdigit():判断字符是否是数字; isgraph():判断字符是否是可打印的非空格字符; ispunct():判断字符是否是标点符号;原创 2013-07-08 19:50:32 · 347 阅读 · 0 评论 -
在一个程序里面同时用两个while(cin)的处理办法
本文转自 :http://blog.csdn.net/su_xiaoyan/article/details/8305807//给出两个int型的vector对象,判断一个对象是否是另一个对象的前缀#include#includeusing namespace std;int main(){ vector ivec1, ivec2; int ival; //读入第转载 2013-07-08 14:36:37 · 790 阅读 · 1 评论 -
c++ vector list erase 的用法
以下为C++ primer 中 习题9.26的答案,是关于vector 的erase方法。#include "stdafx.h"#include #include #include #include #include #define ARRAY_LENGTH 5using namespace std;int main(int argc, char * argv[]){ int原创 2013-07-08 16:22:26 · 581 阅读 · 0 评论 -
C++ 用LIBCURL库进行HTTP通讯网络编程
本文转自 http://www.cnblogs.com/moodlxs/archive/2012/10/15/2724318.htmlC++ 用LIBCURL库进行HTTP通讯网络编程目录索引:一、LibCurl基本编程框架二、一些基本的函数三、curl_easy_setopt函数部分选项介绍四、curl_easy_perform 函数说明(e转载 2013-07-09 17:25:21 · 606 阅读 · 0 评论 -
c++ vector 删除指定元素
转自: http://www.cnblogs.com/youxin/archive/2012/06/22/2558383.html 只使用vector的erase函数,记住,该函数是迭代器失效,返回下一个迭代器。#include #include using namespace std; int main(){ vectorint> arr; a原创 2013-07-11 19:39:17 · 860 阅读 · 0 评论 -
c++ istream_iterator、ostream_iterator 用法
本文转自 :http://blog.csdn.net/laixingjun/article/details/8913799 标准程序库定义有供输入及输出用的iostream iterator类,称为istream_iterator和ostream_iterator,分别支持单一型别的元素读取和写入。使用这两个iterator classes之前,先得含入iterator转载 2013-07-12 20:57:39 · 522 阅读 · 0 评论 -
c++ 头文件保护符
头文件保护符:#ifndef ,#define ,#endif头文件保护符:#ifndef ,#define ,#endif,是为了避免某个头文件被多重包含。如类Person中包含了头文件string,而使用Person类的程序中也许并不确定Person中是否已经包含string,于是它便再次#include,这样一来,string就被包含了两次,为了保证多次包含同一头文件不会引起该头文件原创 2013-07-13 16:05:41 · 447 阅读 · 0 评论 -
OpenCV-2.4.3+VS2010+Win7(32位)安装与配置
一、下载OpenCV2.3.4从 http://www.opencv.org.cn/index.php/Download 下载 OpenCV for Windows(也即 OpenCV-2.3.4-win-superpack.exe 文件)。将 OpenCV-2.3.4-win-superpack.exe 解压并放到某个路径目录下,例如 D:\OpenCV2.3.4。二、配原创 2013-07-28 19:58:11 · 597 阅读 · 0 评论