摘要: 继承了父类,就一定要调用父类的构造函数 构造函数的执行顺序和析构函数的执行顺序刚好完全相反#include "stdafx.h"#include <iostream>#include <time.h>using namespace std;class B1{public: B1(int i) { c 阅读全文
posted @ 2017-08-31 14:48 倾耳听 阅读(201) 评论(0) 推荐(0) 编辑
摘要: // map.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>#include <map>using namespace std;typedef pair<string, int> mine;struct MyStruct{ i 阅读全文
posted @ 2017-08-29 11:07 倾耳听 阅读(511) 评论(0) 推荐(0) 编辑
摘要: // map.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>#include <map>using namespace std;typedef pair<int, int> mine;int _tmain(int argc, 阅读全文
posted @ 2017-08-28 19:21 倾耳听 阅读(152) 评论(0) 推荐(0) 编辑
摘要: atoi()函数 int atoi(const char *str ); 功能:把字符串转换成整型数。 str:要进行转换的字符串 返回值:每个函数返回 int 值,此值由将输入字符作为数字解析而生成。 如果该输入无法转换为该类型的值,则atoi的返回值为 0。 说明:当第一个字符不能识别为数字时, 阅读全文
posted @ 2017-08-28 15:52 倾耳听 阅读(1053) 评论(0) 推荐(0) 编辑
摘要: 在TinyXML中,根据XML的各种元素来定义了一些类: TiXmlBase:整个TinyXML模型的基类。 TiXmlAttribute:对应于XML中的元素的属性。 TiXmlNode:对应于DOM结构中的节点。 TiXmlComment:对应于XML中的注释 TiXmlDeclaration: 阅读全文
posted @ 2017-08-28 11:55 倾耳听 阅读(482) 评论(0) 推荐(0) 编辑
摘要: #include "stdafx.h" 应写在文件的最前面,因为它之前的代码编译器会略过。stdafx的英文全称为:Standard Application Framework Extensions(标准应用程序框架的扩展) stdafx.h是MFC的编译向导自动生成的,对于常见的编译器来说,也就是 阅读全文
posted @ 2017-08-28 09:43 倾耳听 阅读(623) 评论(0) 推荐(0) 编辑
摘要: 1、用const修饰函数的参数const只能修饰输入参数,不能修饰输出参数如果输入参数采用“指针传递”,那么加const修饰可以防止意外地改动该指针,起到保护作用。2、用const修饰函数的返回值函数返回值(即指针)的内容不能被修改,该返回值只能被赋给加const修饰的同类型指针。例如函数const 阅读全文
posted @ 2017-08-26 15:47 倾耳听 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 一、non-Unicode character set is deprecated 根据提示网址,下载vc_mbcsmfc.ext插件 阅读全文
posted @ 2017-08-26 14:48 倾耳听 阅读(117) 评论(0) 推荐(0) 编辑
摘要: static静态变量的理解 静态变量 类型说明符是static。 静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在 静态存储区内分配存储单元),该区域中的数据在整个程序的运行期间一直占用这些存储空间(在程序整个运行期间都不释放),也可以认为是其内存地址不变,直 到整个程序运行结束(相反, 阅读全文
posted @ 2017-07-17 17:19 倾耳听 阅读(1966) 评论(0) 推荐(0) 编辑
摘要: http://coolshell.cn/articles/4119.html 阅读全文
posted @ 2017-06-21 16:15 倾耳听 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 互斥是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。 同步是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。 同步其实已经实现了互斥,所以同步是一种更为复杂的互斥。 互斥是一种特殊的同步。 详见http: 阅读全文
posted @ 2017-06-21 09:49 倾耳听 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 无论你遇见谁,他都是对的人;无论发生什么事,那都是唯一会发生的事;不管事情开始于哪个时刻,都是对的时刻。 生活总会给你答案,但不会马上把一切都告诉你。最重要的是,在这之前你一定要耐得住性子,守得住初心。 上天不会无缘无故做出莫名其妙的决定,它让你放弃和等待,是为了给你更好的。 不管正经历着怎样的挣扎 阅读全文
posted @ 2017-06-07 16:06 倾耳听 阅读(151) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/ghevinn/article/details/8216390 阅读全文
posted @ 2017-06-06 17:44 倾耳听 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。例如:#define PI 3.1415926程序中的:area=PI*r*r 会替换为3.1415926*r*r如果你把#define语句 阅读全文
posted @ 2017-05-12 15:15 倾耳听 阅读(420) 评论(0) 推荐(1) 编辑
摘要: 服务器 socket() bind() listen() 客户机 accept() socket() connect() read() write() write() read() close() close() 1:加载套接字库,创建套接字(WSAStartup()/socket()); 2:绑定 阅读全文
posted @ 2017-05-08 14:20 倾耳听 阅读(235) 评论(0) 推荐(0) 编辑
摘要: Socket socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。 在Internet上的主机一般运行了多个服务软件, 阅读全文
posted @ 2017-04-26 17:00 倾耳听 阅读(201) 评论(1) 推荐(0) 编辑
摘要: sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK_RAW);基于TCP的socket编程是采用的流式套接字。 服务器端编程的步骤:1:加载套接字库,创建套接字(WSAStartup()/socket());2:绑定套 阅读全文
posted @ 2017-04-26 16:54 倾耳听 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 一直对多线程编程这一块很陌生,决定花一点时间整理一下。 os:ubuntu 10.04 c++ 1.最基础,进程同时创建5个线程,各自调用同一个函数 [html] view plain copy #include <iostream> #include <pthread.h> //多线程相关操作头文 阅读全文
posted @ 2017-04-26 16:43 倾耳听 阅读(257) 评论(0) 推荐(0) 编辑
摘要: C++ 多线程 多线程是多任务处理的一种特殊形式,多任务处理允许让电脑同时运行两个或两个以上的程序。一般情况下,两种类型的多任务处理:基于进程和基于线程。 基于进程的多任务处理是程序的并发执行。 线程的多任务处理是同一程序的片段的并发执行。 基于进程的多任务处理是程序的并发执行。 线程的多任务处理是 阅读全文
posted @ 2017-04-26 16:31 倾耳听 阅读(299) 评论(0) 推荐(0) 编辑
摘要: h引擎介绍:ttp://www.jb51.net/article/38004.htm 学习网站:http://www.w3school.com.cn/sql/ MyISAM:MyISAM是MySQL的ISAM扩展格式和缺省的数据库引擎。除了提供ISAM里所没有的索引和字段管理的大量功能,MyISAM 阅读全文
posted @ 2017-04-26 11:38 倾耳听 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 1:使用SHOW语句找出在服务器上当前存在什么数据库: mysql> SHOW DATABASES; 2:创建一个数据库MYSQLDATA mysql> CREATE DATABASE MYSQLDATA; 3:选择你所创建的数据库 mysql> USE MYSQLDATA; (按回车键出现Data 阅读全文
posted @ 2017-04-25 16:23 倾耳听 阅读(117) 评论(0) 推荐(0) 编辑
摘要: #include<iostream>using namespace std;template <typename T>T myMax(T a, T b){ return a > b ? a : b;};int main(){ int a = 7; int b = 8; cout<<myMax(a,b 阅读全文
posted @ 2017-04-24 16:33 倾耳听 阅读(186) 评论(0) 推荐(0) 编辑
摘要: struct 的成员默认是公有的,而类的成员默认是私有的。 阅读全文
posted @ 2017-04-24 15:46 倾耳听 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 分配方式有三种, 1、 静态存储区,是在程序编译时就已经分配好的,在整个运行期间都存在,如全局变量、常量。2、 栈上分配,函数内的局部变量就是从这分配的,但分配的内存容易有限。3、 堆上分配,也称动态分配,如我们用new,malloc分配内存,用delete,free来释放的内存。 阅读全文
posted @ 2017-04-24 15:26 倾耳听 阅读(883) 评论(0) 推荐(0) 编辑
摘要: 类成员函数的重载、覆盖和隐藏区别:成员函数被重载的特征:(1)相同的范围(在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。覆盖是指派生类函数覆盖基类函数,特征是:(1)不同的范围(分别位于派生类与基类);(2)函数名字相同;(3)参数相同;(4)基类函数必须 阅读全文
posted @ 2017-04-24 15:17 倾耳听 阅读(378) 评论(0) 推荐(0) 编辑
摘要: cout<<"A "; } ~A() { } };class B{ public: B(int j ){ cout<<"B "; } ~B() { }}; class C{ public: C(int k ){ cout<<"C "; } ~C(){ cout<<"~C "; }}; class D 阅读全文
posted @ 2017-04-24 09:30 倾耳听 阅读(105) 评论(0) 推荐(0) 编辑
摘要: #include<iostream> using namespace std; class MyClass { public: MyClass(int i = 0){ cout<<i; } MyClass(const MyClass &x){ cout<<2; } MyClass& operator 阅读全文
posted @ 2017-04-24 09:24 倾耳听 阅读(226) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/hackbuteer1/article/details/79265921、以下程序的运行结果是()[cpp] view plain copy int main(void) { printf("%s , %5.3s\n","computer","compute 阅读全文
posted @ 2017-04-12 17:54 倾耳听 阅读(441) 评论(0) 推荐(0) 编辑
摘要: 当为int类型时: 会输出:1234 当为字符串时: 会输出:computer , com 前面会自动补两个空格,输出三个字符 当为float时: 会输出:12.330000,123.46 小结:整数位表示所占空格数,纯粹为了格式好看。小数位表示输出个数,int有点例外。 阅读全文
posted @ 2017-04-12 11:15 倾耳听 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 一、序列式容器: vector(向量)中的元素是按照插入的顺序排列的;deque 是队列,队列中的元素是按照进队列的顺序排列的;list 中的元素也是无序的;为了能够具有较高的查询效率,map 内部采用了平衡二叉树进行排列,因此,它是排好序的。 set也是排好序的(关联性容器都是排好序的) Vect 阅读全文
posted @ 2017-04-12 09:30 倾耳听 阅读(403) 评论(0) 推荐(0) 编辑
摘要: #include<iostream>#include<string.h>using namespace std;class String{ public: int a; String &operator + (const String &rhs); String(int b){ a=b; }};St 阅读全文
posted @ 2017-04-11 20:41 倾耳听 阅读(651) 评论(0) 推荐(0) 编辑
摘要: String & String::operator =(const String &other){ // 得分点:输入参数为const型 if(this == &other) //得分点:检查自赋值 return *this; delete [] m_data; //得分点:释放原有的内存资源 in 阅读全文
posted @ 2017-04-11 20:40 倾耳听 阅读(244) 评论(0) 推荐(0) 编辑
摘要: char *strcpy(char *strDest, const char *strSrc){ if ( strDest == NULL || strSrc == NULL) return NULL ; if ( strDest == strSrc) return strDest ; char * 阅读全文
posted @ 2017-04-11 20:39 倾耳听 阅读(310) 评论(0) 推荐(0) 编辑
摘要: String::String(const String &other){ // 得分点:输入参数为const型 int length = strlen(other.m_data); m_data = new char[length+1]; //加分点:对m_data加NULL 判断 strcpy(m 阅读全文
posted @ 2017-04-11 20:39 倾耳听 阅读(390) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h>#include<stdlib.h>void main(){ int i, j, b, a[10]; printf("随机猜想数为:\n"); for(i = 0; i < 10; i++){ a[i] = rand(); printf("%d\n",a[i]); 阅读全文
posted @ 2017-04-11 20:38 倾耳听 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 单例模式的概念: 单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。 关键点: 1)一个类只有一个实例 这是最基本的 2)它必须自行创建这个实例 3)它必须自行向整个系统提供这个实例 阅读全文
posted @ 2017-04-11 20:37 倾耳听 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 和虚函数相似#include<iostream>using namespace std;class ClxBase{ public: ClxBase() {}; virtual ~ClxBase() { std::cout << "父类析够函数"<<std::endl; } virtual void 阅读全文
posted @ 2017-04-11 20:36 倾耳听 阅读(123) 评论(0) 推荐(0) 编辑
摘要: #include<iostream>using namespace std;int main(){ class A{ public: virtual void foo(){ cout<<"A::foo() is called"<<endl; } }; class B:public A{ public 阅读全文
posted @ 2017-04-11 20:35 倾耳听 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 服务器端:socket()建立套接字,绑定(bind)并监听(listen),用accept()等待客户端连接, accept()发现有客户端连接,建立一个新的套接字,自身重新开始等待连接。该新产生的套接字使用send()和recv()写读数据,直至数据交换完毕,closesocket()关闭套接字 阅读全文
posted @ 2017-04-11 20:34 倾耳听 阅读(1044) 评论(0) 推荐(0) 编辑
摘要: new 返回指定类型的指针,并且可以自动计算所需要大小。比如:int *p;p = new int; //返回类型为int* 类型(整数型指针),分配大小为 sizeof(int); 而 malloc 则必须由我们计算要字节数,并且在返回后强行转换为实际类型的指针。int* p; p = (int 阅读全文
posted @ 2017-04-11 20:34 倾耳听 阅读(122) 评论(0) 推荐(0) 编辑