自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (7)
  • 收藏
  • 关注

原创 linux终端开启oracle服务和给用户授权

切换到数据库服务的用户(即操作系统的用户)$ su – oracle开启oracle身份认证$ sqlplus /nologsql> conn / as sysdba开启/关闭oracle服务sql> startup (一般不需要加参数,只要设置好环境变量)sql> quit (退出sql模式)$ lsnrctl start (启动监听器)关闭oracle$ l...

2019-09-20 10:56:02 2411

原创 Windows本地ftp服务器配置教程

1、在本地上创建一个用户,输入用户名和密码2、创建FTP上传文件夹和FTP下载文件夹3、安装IIS服务器组件4、服务器站点配置,输入对应的ip地址和物理路径5、网站访问即可注意:用户名必须为英文,否则无法登陆配置linux系统FTP服务器 linux常用命令:“|”: 管道,把前一个命令的结果当成后一个命令的输入rpm: RPM Package Manager RPM软件包管理器...

2019-09-20 10:55:17 623

原创 plsql连接虚拟机oracle问题配置解决

1、虚拟机oracle主机和ip地址配置 vi /etc/hosts (修改为对应的虚拟机ip地址)192.168.150.128 localhost oracle2、oracle的监听文件配置/u01/app/oracle/product/11.2.0.3/db_1/network/admin/listener.ora (该监听ip地址,注意:虚拟机ip地址的网段和使用的本地主机ip地...

2019-09-20 10:53:41 1071

原创 MySql学习day06 常用的数据库访问技术 C语言中访问MySQL数据库 C语言连接MySQL数据库 DML操作 select操作 错误处理

1.常用的数据库访问技术1.1 proc/c++ c/c++中访问oracle数据库的技术1.2 odbc/ado vc中访问数据库的技术1.3 jdbc java中访问数据库的技术2.C语言中访问MySQL数据库linux下API函数windows下odbc/adoC语言连接MySQL数据库3.1 本地连接3.1.1 相关的数据类型和函数...

2019-06-03 20:15:49 305

原创 MySql学习day05 触发器 trigger 存储过程和游标 事务机制

触发器 triggerDML触发器 1.1 创建触发器的语法create trigger 触发器名 触发时间 触发事件 on 表名 for each rowbegin触发程序;end;其中:触发时间:before after触发事件:insert update deletefor each row: 行级触发器列标识符: old(原值) new...

2019-06-02 19:53:40 309

原创 MySql学习day04 索引 index 视图 view MySql扩充 MySql编程的基础知识 流程控制语句 系统函数

–把C语言的成绩都加10分update choose1 set score+=10 where course_no=(select course_no from course where course_name=‘C语言’);delete from choose1 where student_no=(select student_no from student where student_na...

2019-06-02 19:50:33 169

原创 MySql学习day03 where子句 order by子句 聚合函数(组函数) group by子句 子查询 索引 index

1.where子句1.1 作用根据条件筛选数据库。符合条件表达式的行被筛选出来,不符合条件的数据行被过滤掉。1.2 语法where 条件表达式1.3 比较运算符< >= <= = !=(<>)– 列出’张三’的成绩select s.student_no,s.student_name,c.scorefrom student s jo...

2019-05-29 20:13:33 597

原创 MySql学习day02 复制表结构 数据库操作语句(DML) select语句

复制表结构1.1 复制表结构(不包含数据)– 语法create table 新表名 like 源表名;– 示例create table stu1 like student;1.2 使用查询结果集创建新表– 语法create table 新表名 select语句;– 示例– 向stu1中插入测试数据insert into stu1 values(‘2017001’,‘张三’,...

2019-05-29 20:09:32 1610

原创 MySQL学习day01 数据库概述 MySQL基础知识 MySQL表结构的管理

MySQL数据库概述1.1 数据管理技术的发展人工管理阶段:20世纪50年代中期之前文件系统阶段:20世纪50年代末~60年代中缺点:数据冗余(重复)数据不一致数据联系弱数据库阶段:数据库技术诞生的标志性事件:1968年,IBM 推出了 层次型数据库产品 IMS1969年,DBTG 发布了一系列报告(数据库及其操作环境的标准的规范)1970年,IBM 研究人员 E.F....

2019-05-29 20:07:04 220

原创 STL(模板学习)day04 标准模板库(STL)

六、标准模板库(STL)…2.向量(vector)…2)迭代器…begin()begin() constend()end() constrbegin()rbegin() constrend()rend() const - 反向只读终止迭代器begin - 起始end - 终止没有const - 可写const - 只读没有r - 正向r - 反向正向迭代器:...

2019-05-22 14:40:04 137

原创 STL(模板学习)day03 模板特性 容器、迭代器和泛型算法 标准模板库(STL)

四、模板特性…7.编译模型…导出模型:通过export关键字,将模板声明为导出,这样编译器在对模板进行一次编译时会将该模板内部表示,缓存在.o文件中,等到链接阶段,在结合实例化该模板的具体类型,补充做二次编译,得到相应的具体函数和具体类,最后完成二进制代码的链接。但是,很遗憾,目前阶段大部分C++编译器都不支持这种做法。因此,多数情况下依然采用包含模型或者预实例化模型,解决模板的分离编译问...

2019-05-22 14:31:54 260

原创 Ubuntu 16.04/12.04环境配置 vim配置 C++编译环境和开发环境qtcreator配置 mysql安装配置 软件包无法正常安装更新的问题

解决软件包无法正常更新、安装的问题:打开软件更新器,勾选更新选项中的重要安全更新和推荐更新,并取消勾选其他软件无关的更新。执行以下命令即可:sodo apt-get update再重新安装即可解决问题mysql安装:ubuntu 16.04参考原博主文章参考原博主文章注意:ubuntu 12.04 编码格式更改与 ubuntu 16.04有所差异。vi配置正常模式set nu...

2019-05-22 00:19:56 246

原创 基于TCP客户端接和服务器端通信原理的实现

客户端tcpSocket.connectToHost(serverIp,serverPort);; connected(); write(); readyRead(); readAll();服务器端 tcpServer.listen(QHostAddress::Any,serverPort); newConnection(); ...

2019-05-21 23:40:51 839

原创 STL(模板学习)day02 类模板 模板特性

一、类模板…6.特(例)化将类模板针对特殊类型的特殊实现以独立的方式加以定义。1)全模板特化// 通用版本template class Comparator { … };// 特化版本template<> class Comparator<char const*> { … };Comparator ci; // 通用版本<-intComparato...

2019-05-16 19:37:44 151

原创 STL(模板学习)day01 模板的史前时代 函数模板 类模板

模板和STL一、模板的史前时代数据类型:数据在内存中的存储形式、编码方式、访问形式静态类型系统int i;double f = (double)i;i = 10i = ‘hello’i = Student()优点:高性能、高安全性缺点:灵活性差代码:typed.cpp#include <iostream>using namespace std;int min...

2019-05-16 19:19:34 112

原创 Qt学习day08 Http客户端(代码下载器)

多窗口编程:1)程序启动时,先显示子窗口,再显示主界面//windows12)程序启动时,先显示主界面,再弹出子窗口//windows23)程序启动时,显示出多个窗口//windows3项目:Http客户端(代码下载器)1)需求分析–》显示下载代码界面–》处理"子目录"链接–》实现对文件下载2)概要设计3)详细设计4)编写代码5)运行测试*6)代码重构7)产品发布8...

2019-05-14 21:04:08 376

原创 Qt学习day07 Qt的网络编程 UDP网络广播 网络聊天室

一 Qt的网络编程1 QHostAddress//IP地址1)构造IP地址对象QHostAddress ip(“xx.xx.xx.xx”);QHostAddress ip;ip.setAddress(“xx.xx.xx.xx”);2)特殊的IP地址QHostAddress::LocalHost//127.0.0.1QHostAddress::Broadcast//255.255.2...

2019-05-14 20:58:59 499

原创 关于解决在Ubuntu系统下移植或拷贝过来qt项目无法正常打开的问题总结

如下图所示:从网上下载的项目或者从别的电脑环境拷贝过来的项目,无法在我的ubuntu系统下正常打开我在网上看了很多方法,都没有找到想要的答案,下面是我经过不断尝试之后的一点分享,希望对大家有用。第一种方案:直接利用Qtcreator工具打开移植或拷贝来的项目,需要进行本地重新编译,需要注意的是,和本地项目不同的是,本地项目在构建运行的时候,可以取消“概要”勾选,完全ok,但是移植或拷贝过...

2019-05-14 00:57:53 1982 1

转载 Ubuntu下Git的安装和使用,linux下更新GitHub源码

参考原博主文章在Ubuntu系统下,安装过程如下:1、安装:通过apt方式安装$:’ sudo add-apt-repository ppa:git-core/ppa中间暂停时,按回车键Enter继续安装…$:’ sudo apt-get update$:’ sudo apt-get install git安装完成后,使用–version选项,确认git版本…$:’ git --v...

2019-05-13 09:07:46 1507

原创 Qt学习day06 QT多线程(QThread) 线程同步 网络编程基础

一 QT多线程(QThread)1 创建线程1)方法一:QObject::moveToThreadclass Worker : public QObject{Q_OBJECTpublic slots://将来想在子线程中执行的函数void doWork(…) {/耗时或阻塞的操作/}};class Controller : public QObject{Q_OBJECT...

2019-05-11 19:49:53 949

原创 Qt学习day05 Qt数据库(Sqlite) 在Qt中使用Sqlite数据库

一 Qt数据库(Sqlite)1 简介1)什么是数据库数据库是指以一定方式存储在一起,能为多个用户共享,具有尽可能小的冗余特性,是与应用程序彼此独立的数据集合。2)相关名词DB 数据库(database)DBMS 数据库管理系统DBA 数据库管理员RDB 关系式数据库//普遍3)常见的数据库商业数据库:–》甲骨文Oracle,市场占有率50%–》IBM的DB2,市场...

2019-05-11 19:49:44 341

原创 Qt学习day04 资源和图像 目录和定时器 鼠标和键盘操作

一 资源和图像1 资源编译器(rcc)1)创建资源脚本(.qrc)vi test.qrc0.jpg2)将资源脚本中描述的图片转换为C++的源文件rcc test.qrc -o qrc_test.cpp2 绘图事件1)当应用程序开始运行或者窗口改变时,绘图事件将自动被触发,也可以调用“update()”来触发.2)当绘图事件被触发后,对应的事件处理函数将被执行void p...

2019-05-11 19:49:36 145

原创 Qt学习day03 Qt设计师(designer) Qt创造器(qtcreator)

一 Qt设计师(designer)案例:使用qt设计,重构加法计算器1 创建工程目录mkdir Calculator22 进入工程目录,输入“designer”启动设计师1)在新建窗体界面选择模板“Dialog Without Button”2)在设计师界面中完成“计算器”界面设计–》从“widget Box”中找到所用图形控件拖拽到父窗口上Label、LineEdit、Push...

2019-05-11 19:49:26 864

原创 Qt学习day02 信号和槽 面向对象的Qt编程

一 信号和槽1 概念信号和槽中Qt自行定义的一种通信机制,实现对象之间数据交互.2 定义class XX:public QObject{Q_OBJECT //moc编译器public slots:void slot_func(…);//槽signals:void signal_func(…);//信号};注:槽函数可以连接到某个对象的信号上,通过信号触发槽的执行;槽函数也可以...

2019-05-11 19:49:17 221

原创 Qt学习day01 Qt的概述 第一个Qt程序 Qt字符串(QString)和字符编码 父窗口(容器窗口)

Qt(跨平台的C++ GUI应用程序开发框架)一 Qt的概述1 Qt的历史发展1)1991年Haavard Nord和Eirik Chambe-Eng合作编写最初的Qt2)1994年创立TrollTech(奇趣科技公司)3)2005年Qt4.0发布4)2008年诺基亚收购了奇趣科技5)2009年源代码开放6)2012年诺基亚将Qt业务出售给Digia公司7)2013年Qt5.0发...

2019-05-11 19:49:06 372

原创 LInux C++学习day11 运行时类型信息 C++异常机制(Exception) I/O流

一 运行时类型信息1 typeid操作符#include typeid(类型/对象);//返回typeinfo对象1)typeinfo类包含name成员函数,可以返回字符串形式类型信息2)typeinfo类提供了“==”和“!=”操作符重载支持,可以直接类型之间的比较注:如果类型之间具有多态的继承关系,那么typeid还可以利用多态语法确定实际目标对象的类型。2 dynamic_ca...

2019-05-11 19:08:07 250

原创 LInux C++学习day10 多态

一…4 纯虚函数、抽象类和纯抽象类1)纯虚函数virtual 返回类型 函数名(形参表) = 0;2)抽象类如果类中包含了纯虚函数,那么该类就是抽象类注:抽象类不允许创建对象3)纯抽象类如果类中所有成员函数都是纯虚函数,那么该类就是纯抽象类.5 多态语法原理:多态语法通过虚函数表和动态绑定来实现的//了解1)虚函数表会增加内存的开销2)动态绑定的过程增加时间的开销3)虚函...

2019-05-11 19:07:56 110

原创 LInux C++学习day09 继承(Inheritance) 多态(polymorphic)

一 继承(Inheritance)8 多重继承1)概念一个子类可以同时基类多个基类,这样的继承方式被称为多重继承。电话 播放器 计算机\ | / 智能手机2)多重继承在向上造型时,会根据各个基类子对象 在子类对象中的内存布局,自动进行偏移计算,保证指针的类型和其指向的目标对象类型一致。//参考mul_inherit.png3)名字冲突问题–》一个的子类的多个基类如果存在同...

2019-05-11 19:07:47 137

原创 LInux C++学习day08 继承(Inheritance)

一 继承(Inheritance)1 继承的概念//了解通过一种机制表达类型之间共性和特性的方式,利用已有的数据类型来定义新的数据类型,这种机制就是继承.eg:人类:姓名、年龄、吃饭、睡觉学生类:姓名、年龄、吃饭、睡觉、学号、学习教师类:姓名、年龄、吃饭、睡觉、工资、讲课…------------------------------------------人类:姓名、年龄、吃饭、...

2019-05-11 19:07:39 125

原创 LInux C++学习day07 操作符(运算符)重载

一 操作符(运算符)重载1 基本概念操作符重载的本质就是一个写具有特殊名称的函数,使用operator 后接一个操作符,比如“operator=” “operator+”,把已定义的符号来重新定义,实现程序员想要的运算功能.eg:复数 x+yi(1+2i) + (3+4i) = 4+6i2 双目操作符重载 L#R2.1 计算类双目操作符:+ -–》左右操作数既可以是左值也可以是右值...

2019-05-11 19:07:28 253

原创 LInux C++学习day06 拷贝构造和拷贝赋值 静态成员(static) 成员指针 操作符(运算符)重载

一 拷贝构造和拷贝赋值1 浅拷贝和深拷贝1)如果类中包含指针形式的成员变量,缺省的拷贝构造函数只是复制了指针变量本身,没有复制指针所指向的内容,这种拷贝方式称为浅拷贝.2)浅拷贝将导致不同对象间的数据共享,如果数据在堆区,析构时还可能会出现“double free”的错误,导致进程终止,所以必须自己定义一个支持复制指针所指向内容的拷贝构造函数,即深拷贝.2 拷贝赋值1)当两个对象进行赋值...

2019-05-11 19:07:19 169

原创 LInux C++学习day05 this指针和常成员函数(常函数) 析构函数(Destructor) 拷贝构造和拷贝赋值

补充需要显式使用初始化列表的场景:–》类中包含引用或const型的成员变量,必须要使用初始化列表来初始化.–》成员变量的初始化顺序由声明顺序决定,而与初始化列表的顺序无关,所以不要使用一个成员变量去初始化另一个成员变量.一 this指针和常成员函数(常函数)1 this指针1)类中的成员函数(包括构造函数、析构函数)中都隐藏一个当前类类型的指针参数,名为this,在成员函数中访问类中的...

2019-05-11 19:07:10 147

原创 LInux C++学习day04 类定义与实例化 构造函数和初始化列表

一 类定义与实例化1 类的一般语法形式struct/class 类名:继承方式 基类,…{访问控制限定符:类名(形参表):初始化列表{}//构造函数~类名(void){}//析构函数返回类型 函数名(形参表){}//成员函数数据类型 变量名;//成员变量};2 访问控制限定符1)public:公有成员,任何位置都可以访问2)private:私有成员,只有类内部的成员函数才能访...

2019-05-11 19:07:00 310

原创 LInux C++学习day03 引用(reference) 类型转换 类和对象 类定义与实例化

一 引用(reference)…3 引用型函数参数1)可以将引用用于函数的参数,这时形参就是实参的别名,通过形参可以直接修改实参变量的值,同时还可以避免传参的过程,减小函数调用开销,提高代码执行效率。2)引用型函数参数有可能意外的修改实参值,如果不希望修改实参本身,可以将形参声明为常引用,提高传参效率的同时还可以接收常量型的实参。4 引用型函数返回值1)可以将函数的返回类型声明为引用,...

2019-05-11 19:06:49 200

原创 LInux C++学习day01 C++语言概述 第一个C++程序 名字空间(namespace) C++的结构体、联合体和枚举 字符串

标准C++语言、QT框架《C++程序设计原理与实践》《C++Primer》一 C++语言概述1 历史背景1)C++江湖地位java、C、C++2)C++之父,Bjarne Stroustrup(1950–)1979,Cpre,为C语言增加了类的机制1983,C with Class(带类的C),后来称为C++1985,CFront1.0 《The C++ Programmin...

2019-05-11 18:44:17 154

原创 LInux C++学习day02 C++的布尔类型bool 操作符别名 C++的函数 C++的动态内存管理 C++的引用(reference)

C++的布尔类型bool1 bool类型是C++中的基本数据类型,专门表示逻辑值,使用true表示逻辑真,使用false表示逻辑假2 bool类型在内存占一个字节:1表示true,0表示false3 bool类型变量可以接收任何类型表达式结果,其值非零则为真,为0则为假。操作符别名//了解&& <> and|| <> or^ <>...

2019-05-11 18:43:08 224

原创 UC学习day15 线程同步之信号量 system v ipc 共享内存

一 线程同步之信号量#include <semaphore.h>int sem_init(sem_t *sem,int pshared,unsigned int value);功能:初始化一个信号量参数:sem: 指定了要初始化的信号量的地址pshared: 0 多线程 非0 多进程value:指定了信号量的个数返回值:成功 0错误 -1...

2019-05-11 18:29:34 106

原创 UC学习day14 线程终止 汇合 分离 线程同步 条件变量

一 线程终止 汇合 分离pthread_cancel(3)#include <pthread.h>int pthread_cancel(pthread_t thread);功能:给线程发送一个取消请求参数:thread:指定了目标线程的id.回收线程会收到PTHREAD_CANCELED返回值:成功 0错误 非0 的错误码线程分离参见 pthread_d....

2019-05-11 18:29:24 121

原创 UC学习day13 基于TCP的编程封装 并发服务器的实现 基于udp的编程 线程的基础

一 基于TCP的编程 封装实现一次连接多次交换数据客户端发送exit的时候,连接关闭二 并发服务器的实现多进程实现服务器的并发.三 基于udp的编程#include <sys/types.h>#include <sys/socket.h>ssize_t recvfrom(int sockfd, void *buf, size_t len, int f...

2019-05-11 18:29:13 114

原创 UC学习day12 基于tcp的网络编程

一 基于tcp的网络编程四次分手编程模型服务器端1 创建通讯设备(端点),返回该端点的文件描述符sfd.socket(2)2 将sfd和服务器的ip地址 端口号绑定 bind(2)3 将sfd设定为被动连接状态,监听客户端连接的到来.将到来的连接放入未决连接队列中.listen(2)while(1){4 从未决连接队列中取出一个进行处理,返回和客户端的连接描述符cfd.如果未决连...

2019-05-11 18:29:03 165

聊天室项目聊天室.tar.gz

利用C/C++下的Qt框架实现局域网内群聊、发送文件、聊天换肤的功能

2019-06-02

爬虫.tar.gz

基于C/C++技术实现获取网络图片、文档及HTML页面的爬虫工具

2019-05-29

HTTP代码下载器

利用C++、Qt、HTTP协议及TCP、UDP网络通信协议实现对远程服务器端代码的下载

2019-05-22

群发消息实现广播

C++/Qt框架基于UDP网络通信协议实现对广播消息的发送与接收

2019-05-22

网络聊天室

利用C++/Qt框架基于TCP网络通信协议实现客户端与服务器的通信

2019-05-22

学员信息管理系统

基于C++面向对象开发实现封装继承多态的学员信息管理系统

2019-05-22

Web网络服务器

利用C实现的TCP网络通信协议和HTTP协议实现的web服务器项目

2019-05-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除