03 2016 档案

摘要:server server.cpp client.h sever.cpp ui.h 阅读全文
posted @ 2016-03-29 11:41 高傲的monkey 阅读(2193) 评论(0) 推荐(0) 编辑
摘要:1、dialog.h #define DIALOG_H #include <QDialog>#include"mythread.h"namespace Ui {class Dialog;} class Dialog : public QDialog{ Q_OBJECT public: explici 阅读全文
posted @ 2016-03-28 20:05 高傲的monkey 阅读(252) 评论(0) 推荐(0) 编辑
摘要:继承:保持已有类的特性而构造新类的过程 派生:在已有类的基础上新增自己的特性而产生新类的过程 #include<iostream>using namespace std;class A{public : int x;protected: int y;private: int z; }; class 阅读全文
posted @ 2016-03-23 20:36 高傲的monkey 阅读(293) 评论(0) 推荐(0) 编辑
摘要:类的组合:类中的数据成员是另一个类的对象:可以在已抽象的基础上实现更复杂的抽象 也就是一个类中抱含了另一个类的对象; 类组合的构造函数:不仅要负责对本类中的基本数据类型成员数据赋初值,也要对对象成员赋初值: 阅读全文
posted @ 2016-03-23 20:08 高傲的monkey 阅读(590) 评论(0) 推荐(0) 编辑
摘要:#include 包含指令 将一个源文件嵌入到当前源文件中该点处。 #include<文件名> 按标准方式搜索,文件位于C++系统目录的include子目录下 #include"文件名" 首先在当前目录中搜索,若没有,再按标准方式搜索。 #define 宏定义指令 定义符号常量,很多情况下已被con 阅读全文
posted @ 2016-03-23 19:50 高傲的monkey 阅读(830) 评论(0) 推荐(0) 编辑
摘要:1、常引用:被引用的对象不能被更新 使用:const 类型名 &引用对象 如const int &a; 2、常对象:必须进行初始化,并且对象不能改变 使用:类名 const 对象名 常对象只能访问常成员函数; 3、常数组:数组元素不能改变 使用:const 数组名 4、常指针:指向常量的指针 con 阅读全文
posted @ 2016-03-23 19:37 高傲的monkey 阅读(230) 评论(0) 推荐(0) 编辑
摘要:友元是c++提供的一种破坏数据封装和数据隐藏特性的机制; 分为友元类和友元函数; 友元函数; 1、由关键字friend 修饰说明的非成员函数; 2、在函数体中可以通过类的对象访问私有成员和protect成员; 作用:增加灵活性,使程序员可以在封装和快速性方面做合理选择。 #include <iost 阅读全文
posted @ 2016-03-23 19:20 高傲的monkey 阅读(292) 评论(0) 推荐(0) 编辑
摘要:静态成员分为静态数据成员和静态函数成员: 静态数据成员: 1、用关键字static来声明; 2、该类的所有对象维护改成员的同一份拷贝;(就是说所有的对象看到的是同一份数据) 3、必须在类外定义和初始化(声明后立刻初始化),用::指明所属的类(但是要在类中进行声明) 4、如果静态数据成员为公有可以通过 阅读全文
posted @ 2016-03-23 18:09 高傲的monkey 阅读(300) 评论(0) 推荐(0) 编辑
摘要:#include<iostream> using namespace std; class A { private: int a; int b; public: A(int a,int b)//==A(A *this,int a,int b); { this->a = a; this->b = b; 阅读全文
posted @ 2016-03-23 17:55 高傲的monkey 阅读(97) 评论(0) 推荐(0) 编辑
摘要:构造函数: 作用:初始化类中的数据成员 特点: 1、在对象创建时,由系统自动调用; 2、构造函数名与类名相同; 3、不能指定返回类型 4、允许为内联,重载,带默认参数值得函数 5、如果类中未声明,系统自动产生一个默认形式的构造函数; 拷贝构造函数: 用类的一个对象去初始化类的另一个对象。 析构函数: 阅读全文
posted @ 2016-03-21 20:53 高傲的monkey 阅读(278) 评论(0) 推荐(0) 编辑
摘要:1、抽象: 抽象出公有特性,包括公有动作,公有数据。 2、类:类是具有相同属性和行为的一组对象的集合(变量和函数) 声明格式: class 类名(Dog) { 类体:(数据和函数成员)默认为私有成员,结构体默认为公有成员 } 3、类成员的访问权限:public ,private,protected 阅读全文
posted @ 2016-03-17 19:22 高傲的monkey 阅读(784) 评论(0) 推荐(0) 编辑
摘要:void指针:主要是便于传递不同类型的参数 const指针: const char *p :const 在* 的左边表示指向一个常量指针:表示指向的内容不可变(*p不能变,p可以改变) int a = 3; int b = 4; const int *p = &a; p=&b;允许;但是*p = 5 阅读全文
posted @ 2016-03-17 18:18 高傲的monkey 阅读(619) 评论(0) 推荐(0) 编辑
摘要:1.命名空间:namespace std; 2.reference (&a) 引用:一个变量的另一个名字 如:int ival = 1024; int &reval = ival;//声明时必须指明本体,并且类型必须匹配 ,引用与变量只能一对一的匹配。 reval = 1024; 范例:(引用同时也 阅读全文
posted @ 2016-03-17 18:03 高傲的monkey 阅读(269) 评论(0) 推荐(0) 编辑
摘要:组播通信 通信步骤: 组播发送: 1、 创建数据报套接字socket() 2、 接收方地址指定为组播地址(ip port) 3、 发送数据包sendto() 4、 关闭套接字close() 组播的接受: 1、 创建数据报套接字 2、 加入多播组 struct ip_mreq { struct in_ 阅读全文
posted @ 2016-03-17 17:06 高傲的monkey 阅读(3818) 评论(0) 推荐(0) 编辑
摘要:使用多路复用实现一个服务器与多个客户端的通信:代码范例: 服务器: #include #include #include #include #include #include #include #include void send1(int *a) { int i; char buf[20]; bzero(buf,20); fgets(buf,20,stdi... 阅读全文
posted @ 2016-03-17 15:41 高傲的monkey 阅读(1196) 评论(0) 推荐(0) 编辑
摘要:使用多路复用实现客户端与客户端进行通信; 原理:客户端只要一连上服务器,立马给服务器发送用户名,然后在服务端将newsocketfd存放在同一个结构体中,客户端先给服务器发送数据,然后通过服务器转发给客户端。(服务器先会查找对应名字的newsocketfd 然后向该newsocketfd中写入数据) 阅读全文
posted @ 2016-03-17 15:40 高傲的monkey 阅读(6899) 评论(0) 推荐(0) 编辑
摘要:多路复用I/O:一个执行体监视多个文件描述符对象的状态是否改变,一旦改变通知其他执行体来实现。 基本思想: 1、 先构造一张有关描述符的表,然后调用一个函数,当这些文件描述符中的一个或者多个已准备好进行I/O时函数才返回 2、 函数返回时告诉进程那个描述符已准备就绪,可以进行I/O操作。 Selec 阅读全文
posted @ 2016-03-17 15:36 高傲的monkey 阅读(510) 评论(0) 推荐(0) 编辑
摘要:广播范例: 谁先接受绑定谁。Udp传输都遵循这个规则。 广播步骤: 接受: 1、 创建用户数据包套接字socket() 2、 绑定本地ip地址和端口bind() 3、 接受数据recvfrom() 4、 关闭socketfd(close()) 发送: 1、 创建用户数据报套接字socket() 2、 阅读全文
posted @ 2016-03-17 15:34 高傲的monkey 阅读(328) 评论(0) 推荐(0) 编辑
摘要:网络地址分类(32位网络地址) A类地址:第一个字节为网络地址,其他3个字节主机地址,第一字节的最高位固定为0 从1.0.0.1 126.255.255.255 B类地址:第一字节和第二字节为网络地址,其他2个字节为主机地址,第一字节前两位固定为10 从128.0.0.1 191.255.255.2 阅读全文
posted @ 2016-03-17 15:32 高傲的monkey 阅读(3964) 评论(0) 推荐(0) 编辑
摘要:进程:一个程序的一次执行过程,是系统调度的单位,资源管理和程序执行的最小单位,线程是调度的最小单位。 程序:是静态的,是一个可执行文件,保存在硬盘上的一些指令的有序集合。 进程的执行过程:指令和数据是存放在硬盘上的,这是前提。首先运行程序---》系统会将硬盘上的指令和数据加载到内存中,(如果cpu每 阅读全文
posted @ 2016-03-07 19:54 高傲的monkey 阅读(333) 评论(0) 推荐(0) 编辑
摘要:进程: 优点:多个进程并发执行,能够参与系统调度,是资源管理和程序执行的最小单位。 缺点:占用资源(无论哪种通信方式都需要创建第三方),效率低下(每次对数据的访问都需经过第三方),系统开销大(进程退出需要保存,执行需要加载资源)。 线程: 优点:多个线程并发执行--à系统调度的最小单位。 与进程共享 阅读全文
posted @ 2016-03-07 19:53 高傲的monkey 阅读(252) 评论(0) 推荐(0) 编辑
摘要:网络编程同时也是进程间的一种通信:服务器进程和应用进程间的通信。 OSI:开放式系统互联 OSI 7层模型: 4层模型 1.应用层:talnet tftp等 2.表示层: 应用层 3.会话层 4.传输层:tcp,udp等,可靠不可靠 传输层 5.网络层:ip,负责把数据发送到另一台电脑 网络层 6. 阅读全文
posted @ 2016-03-07 19:48 高傲的monkey 阅读(255) 评论(0) 推荐(0) 编辑
摘要:系统io读写,copy int main(int argc, char **argv) { if(argc != 3) { printf("Usage: %s <src> <dst>\n", argv[0]); exit(0); } int fd1, fd2; fd1 = open(argv[1], 阅读全文
posted @ 2016-03-04 17:24 高傲的monkey 阅读(258) 评论(0) 推荐(0) 编辑
摘要:fstat ,lstat,stat; 头文件:#include<sys/stat.h> #include<sys/types.h> #include<unistd.h> 定义函数: (1)int stat(const char *file_name,struct stat *buf) 返回一个与此命 阅读全文
posted @ 2016-03-03 18:58 高傲的monkey 阅读(646) 评论(0) 推荐(0) 编辑
摘要:1.定义一个任务结构体,和一个线程池结构体 struct task{ void *(*p)(void*);//需要实现的函数; void *arg;//函数所带的参数 struct task *next;};struct pthread_pool{ pthread_mutex_t mutex;//线 阅读全文
posted @ 2016-03-01 20:41 高傲的monkey 阅读(178) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示