c++
文章平均质量分 66
SuperCoderJz
这个作者很懒,什么都没留下…
展开
-
C++ 位运算符
按位与运算符(&)参加运算的两个数据,按二进制位进行“与”运算。运算规则:0&0=0; 0&1=0; 1&0=0; 1&1=1; 即:两位同时为“1”,结果才为“1”,否则为0例如:3&5 即 0000 0011 & 0000 0101 = 0000 0001 因此,3&5的值得1。 另,负数按补码形式参加按位转载 2016-12-20 15:41:36 · 563 阅读 · 0 评论 -
Unicode 和 ASCII
原文链接:一、什么是Unicode先从ASCII说起,ASCII是用来表示英文字符的一种编码规范。每个ASCII字符占用1个字节,因此,ASCII编码可以表示的最大字符数是255(00H―FFH)。其实,英文字符并没有那么多,一般只用前128个(00H―7FH,最高位为0),其中包括了控制字符、数字、大小写字母和其它一些符号。而最高位为1的另128个字符(80H―FFH)被称为“扩转载 2014-10-11 14:14:52 · 1071 阅读 · 0 评论 -
Base64 编码与解码
//---------------------------------------------------------------------------// MIME(Quoted-Printable & Base64) Encode/Decode unit. (C)// Copyright (c) 2000, 02 Mental Studio - http://msrc.126.com原创 2014-10-11 13:46:52 · 620 阅读 · 0 评论 -
c++ vector中存放指针
#include #include#include#includeusing namespace std;int main(){ vector* > *ve = new vector* >(); pair *p1 = new pair("hello","world"); pair *p2 = new pair("ss","sdf"); ve->push_back(p1原创 2014-11-12 18:12:51 · 10253 阅读 · 0 评论 -
并发和并行的区别 以及线程的死锁
1 并发的英文是 Concurrency,并行的英文是 Parallel,并发与并行是两个不同的概念。 并行是指在同一时刻,有多条指令在多个处理器上同时执行。并发是指在同一时刻,只能有一条指令执行,但多个进程指令被快速轮换执行,使得在宏观上具有多个进程同时执行的效果。 2 线程的死锁 死锁的产生、预防和避免死锁是由于并发进程只原创 2014-11-12 10:47:19 · 1369 阅读 · 0 评论 -
STL 学习1
顺序容器 头文件 #include #include #include 双端队列 初始化: C c(c2) 创建容器C2的副本,c 和c2 必须具有相同的容器类型,切存放相同的类型元素容器元素类型必须满足条件:1 元素类型必须支持复制运算2 元素类型的对象必须可以复制除引用类型为,所有的原创 2014-06-13 20:02:13 · 490 阅读 · 0 评论 -
c++
#includeusing namespace std;class Base{public: void show() { show3(); }protected: virtual void show2() { cout<<"2"<<endl; }private: virtual void show3() { cout<<"3"<<endl;原创 2014-07-17 15:19:09 · 503 阅读 · 0 评论 -
c++ 日历
#includevoid main() { int day[]={31,28,31,30,31,30,31,31,30,31,30,31}; //一年每月天数 int i,j,k,year,week; printf("\n\t请输入年份:"); scanf("%6d",&year); //输入年份 printf("\n"); if((year%4==0&&year%原创 2014-09-03 20:23:49 · 1715 阅读 · 0 评论 -
c++ 栈和堆
原文地址:点击打开链接转载 2014-09-02 16:27:43 · 433 阅读 · 0 评论 -
c++ 栈的链式标示
栈是一种先进后出的数据jiego原创 2014-09-15 16:19:22 · 537 阅读 · 0 评论 -
c++ ++P *
原文:点击打开链接转载 2014-09-02 16:30:09 · 842 阅读 · 0 评论 -
OSI七层参考模型介绍
应用层:为操作系统和网络应用程序 提供访问网络服务的接口表示层:将网络传输的内容转化为用户有意义的编码会话层:建立,管理,终止回话传输层:将上层数据分段,提供端到端的传输,提供服务质量等网络层:管理网络地址,选择路由,定义数据包数据链路层:负责准备物理层网络传输,传输中的错误,将数据封装成帧物理层:有计算机和介质组成,负责将数据编码成比特流,比一次方原创 2013-10-11 15:38:45 · 760 阅读 · 0 评论 -
sizeof struct
【转】SIZEOF 及 结构体联合体大小计算方法Cpp代码 // Example of the sizeof keyword size_t i = sizeof( int ); struct align_depends { char c; int i; }; size_t size = sizeof(alig转载 2014-02-14 16:49:13 · 661 阅读 · 0 评论 -
C++多态的实现原理
1. 用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。2. 存在虚函数的类都有一个一维的虚函数表叫做虚表。类的对象有一个指向虚表开始的虚指针。虚表是和类对应的,虚表指针是和对象对应的。3. 多态性是一个接口多种实现,是面向对象的核心。分为类的多态性和函数的多态性。4. 多态用虚函数来实现,结合动态绑定。5. 纯虚函数是虚函数再加上= 0。6. 抽象类是指包转载 2014-11-20 14:33:46 · 489 阅读 · 0 评论 -
stl 学习小结
STL学习小结STL就是Standard Template Library,标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list, vector,set,map等,STL也是算法和其它一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。是C++标准库的一个重要组成部分,它由St转载 2015-01-22 13:59:22 · 496 阅读 · 0 评论 -
qt5 中读取ini文件 中文出现乱码
QString strPath = QCoreApplication::applicationDirPath()+"/Trader.ini"; QSettings *configIniRead = new QSettings(strPath, QSettings::IniFormat); configIniRead->setIniCodec("UTF8"); QString strName原创 2016-12-05 10:46:44 · 3137 阅读 · 1 评论 -
C++ unique_ptr
unique_ptr 不共享它的指针。它无法复制到其他 unique_ptr,无法通过值传递到函数,也无法用于需要副本的任何标准模板库 (STL) 算法。只能移动unique_ptr。这意味着,内存资源所有权将转移到另一 unique_ptr,并且原始 unique_ptr 不再拥有此资源。我们建议你将对象限制为由一个所有者所有,因为多个所有权会使程序逻辑变得复杂。因此,当需要智能指针用于纯原创 2016-07-19 10:40:07 · 431 阅读 · 0 评论 -
mfc 内存dc
//this class is designed to manager the memory instead of mfc///////////////////////////////////////////////////////////////////////////////////if there have any bugs, pls inform me//Tel: 021-64397原创 2016-04-22 16:24:20 · 635 阅读 · 0 评论 -
实战c++中的string系列--string与整型或浮点型互转
原文链接:点击打开链接教科书中很少会提到string与int或是float的相互转换,但是在实际工程中会经常遇到,尤其在做UI控件显示的时候。比如说你要在edit控件中显示一个数值,那你就需要把这个数值首先转为string,然后再将这个string付给edit控件。网上你会找到很多的转换方法,个人觉得效率差不多的情况下,简洁最好。这里主要用到的是stringst转载 2016-03-10 10:05:03 · 5821 阅读 · 0 评论 -
C++ 隐藏 覆盖 重载
1 重载重载发生在一个类的内部(同一个类中),函数名字相同,参数不同,virtual关键字可有可无#include "stdafx.h"#includeusing namespace std;class Base{public: void show() { cout << "A::show" << endl; } void show(int a) { co原创 2016-03-29 16:00:16 · 350 阅读 · 0 评论 -
c++ 线程类
利用c++11特性 做的一个线程类基类#pragma once#include #include #include /** 工作线程*/class CxWorkThread{public: CxWorkThread(); ~CxWorkThread();public: /* * 初始化 */ virtual int Init(); /* * 开始 *原创 2015-12-16 09:24:08 · 549 阅读 · 0 评论 -
面试 问题
原帖:点击打开链接1. 对于内存管理你有什么看法?- 动态内存尽量谁申请谁释放,分工明确。避免漏释放和重复释放。- 对于嵌入式系统,分析最常用的内存大小,优化内存池配置。- 申请到内存后首先初始化内容。- 保证指针变量初始化- 评估调用深度,避免栈溢出。- 如果内存足够,管理信息时不要过于节省内存,造成效率降低或者代码可读性降低。2.工作中遇到bug怎么解决的转载 2015-10-30 09:26:22 · 435 阅读 · 0 评论 -
C++ 中的回调函数
关于回调函数回调函数在百度百科的讲解是这样的 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方法直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。 通俗的理解 就是 有两个函数A,B,在函数B中有原创 2015-10-29 17:19:07 · 457 阅读 · 0 评论 -
MFC 报winocc.cpp line 303错误
最近在工作中 需要在单文档应用程序中嵌入 formview在frame构造函数中加入 m_infoDlg = (CTradeInfoDialog *)RUNTIME_CLASS(CTradeInfoDialog)->CreateObject();齐总 m_infoDlg为formview的对象,然后在oncreate函数中m_infoDlg->Create(NULL, NULL, WS原创 2015-11-03 13:17:23 · 3416 阅读 · 1 评论 -
一个C++ 发送邮件的类
/*********************************************************************** *发送邮件模块头文件 *可以发送文本和附件(支持多个附件一起发送) *************************************************************************/ #pragma once原创 2015-10-19 09:18:38 · 1003 阅读 · 0 评论 -
c++ sizeof 类
原味链接:http://blog.sina.com.cn/s/blog_728161840100u2ib.html 昨天面试,面试官让我说一说求一个类的sizeof应该考虑的问题,心想,太好了,之前sizeof可是做了不少功夫,就说了类的非静态、非全局成员,如果有虚函数就要加上一个指向虚表的指针,4字节大小,然后说,大概是这样。面试官就问,虚函数的实现机制是?大概讲了一下虚表之类的东东,然后他转载 2015-03-04 16:24:10 · 562 阅读 · 0 评论 -
extern
C/C++中extern关键字详解1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。此外extern也可用来进行链接指定。 也就是说extern有两个作用,第一个,当它与"C"一起连用时,如: extern "C" void fun(int a, int b);则告诉编译器在编译fun这转载 2014-02-14 17:59:31 · 540 阅读 · 0 评论 -
多线程编程(1)
一 创建线程函数: HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD DWORD dwStackSize, // initial stack size LPTHREAD_START_ROUTINE lpStartAddress,原创 2013-10-11 16:21:37 · 685 阅读 · 0 评论 -
C语言 &运算
位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。C语言提供的位运算符列表:运算符 含义 描述& 按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0| 按位或 两个相应的二进制位中只要有一个为1,该位的结果值为1^ 按位异或 若参加转载 2013-12-16 13:28:40 · 3862 阅读 · 0 评论 -
在mfc中 设置窗口隐藏
ModifyStyleEx(WS_EX_APPWINDOW,WS_EX_TOOLWINDOW);//从任务栏中去掉. SetWindowPos(&wndTop,0,0,0,0,NULL);原创 2014-06-05 10:27:31 · 1104 阅读 · 0 评论 -
c++ 读取ini文件
1 ini文件介绍格式:原创 2014-06-09 19:50:21 · 750 阅读 · 0 评论 -
windows下 jsoncpp的编译和使用
解压下载好的文件:jsoncpp-src-0.5.0.tar.gz利用VS2010打开jsoncpp-src-0.5.0\makefiles\vs71目录下的jsoncpp.sln,会出现三个Project:jsontest, lib_json, test_lib_json原创 2014-08-06 15:10:52 · 6235 阅读 · 1 评论 -
Fibonacci 数列
描述无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibonacci数列,它可以递归地定义为F(n)=1 ...........(n=1或n=2)F(n)=F(n-1)+F(n-2).....(n>2)现要你来求第n个斐波纳奇数。(第1个、第二个都为1)输入第一行是一个整数m(m每次测试数据只有一行,且只有一个整形数n(n输出对原创 2014-08-11 18:18:57 · 585 阅读 · 0 评论 -
c++ 使用TinyXML 读取xml数据
1 TinyXml 下载地址 点击打开链接2 下载完成后解压缩共有原创 2014-08-15 20:05:32 · 837 阅读 · 1 评论 -
C++ 抓取网页的源码
1 包含头文件 #include 2 导入库文件 #pragma comment(lib,"wininet.lib");3 使用windowsAPI原创 2014-08-15 16:34:25 · 2970 阅读 · 0 评论 -
c++多线程编程(2)
1 创建事件对象 HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes, // SD BOOL bManualReset, // reset type BOOL bInitialState, // initial state原创 2013-10-14 20:50:41 · 685 阅读 · 0 评论 -
用gdi 实现屏幕截图功能
最近在工作中要实现一个截图的gon原创 2014-09-18 10:47:45 · 8676 阅读 · 0 评论 -
c++ 运算符的重载
重载操作符1 定义类型 operaotr+(参数1 ,参数2) 2 不能重载的操作符 :: .* ?:3 重载操作符必须具有一个类类型的操作数 用于内置类型的操作符,起含义不能改变 int operator+(int,int)//error:内置类型的整形加法操作符不能改变4 重载后操作符的优先级,结核性,操作数目不能改变 ||,&&原创 2013-10-20 19:27:10 · 647 阅读 · 0 评论 -
c++ 关于构造函数 和 复制构造函数
1 构造函数原创 2014-09-04 20:23:11 · 500 阅读 · 0 评论 -
c++ 基础1
1 类类可以没有成员,也可以定义多个成员,类的定义以分号结束,默认访问权限为private,结构体默认访问权限为public2 构造函数创建一个类,编译器为分配默认构造函数 构造函数初始化列表 A():a(0),b(1){};3 成员函数 在类内部定义成员函数,默认为inline, 在const加在形参表之后,就可以将成员函数声明为常量int a()原创 2013-10-12 19:33:47 · 637 阅读 · 0 评论