c++
文章平均质量分 71
lm9140802
我相信我就是我,我相信明天!
展开
-
c++类对象的生存周期
********************在这里我们会通过一个例子来给大家解释说明#include using namespace std;class Test{public: Test(int a = 5,int b = 5):ma(a),mb(b) { cout<<"Test(int)"<<endl; } ~Test() { cout<<"~Test()"<<end原创 2017-09-22 22:44:11 · 567 阅读 · 0 评论 -
STL之vector
今天想学一下stl里面的向量容器vector,写一下它的实现方式:原创 2018-04-26 14:19:07 · 150 阅读 · 0 评论 -
c++的设计模式之一(单例模式)
其实我们首先应该来考虑一下c++为什么会有这么多的设计模式呢???????既然有,就说明它们有着举足轻重的作用!!!!!!!!设计模式的作用:记得有人这样说过:设计模式模式之于面向对象系统的设计和开发的作用就有如数据结构之于面向过程开发的作用一般,可见它的作用是多么的大,有以下作用:原创 2018-04-23 20:23:41 · 159 阅读 · 0 评论 -
有关c++11的一些特性
很久都没进来了,感觉最近很疲惫,今天我i什么要学这个东西呢,是因为自己被不同的人问了很多次,好歹自己也学过c++;被人问过却不知道c++11真的觉得很丢人,所以我这个菜鸟打算了解一下(虽然只是皮毛),这也是分内之事喽,一起学习学习,看看人家的介绍,自己想动手试一试(你也可以动动爪爪,哈哈),在看一本书叫《深入理解c++11》,大家可以瞅瞅一:c++11的诞生2011年11月,c++11/c++0x...原创 2018-04-11 22:01:04 · 226 阅读 · 0 评论 -
负载均衡器
服务器端:sever.cpp#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;int main(int argc,char *argv[])原创 2018-03-19 11:15:19 · 327 阅读 · 0 评论 -
局域网聊天
服务器端:main.cpp//运行服务器#include<iostream>#include"tcpsever.h"#include <stdio.h>#include <stdlib.h>#include <string.h>using namespace std;int main(int argc,char *argv[]){...原创 2018-03-19 10:24:03 · 256 阅读 · 0 评论 -
智能指针
我们先来看几个例子:int *p = new int;我们用一个指针指向一个在堆上开辟的空间,一般情况下我们会在代码的最后delete p,也就是释放我们的堆内存。不过如果我们程序可能出现这样的问题:1:int main(){ int *p = new int; ................... if(..........)原创 2017-12-07 13:59:47 · 233 阅读 · 0 评论 -
c++:变量在内存上的分布
在操作系统上,内存可以被分为两大部分,一部分为user space(进程虚拟地址空间,私有),另一部分为kernel space(共有空间)。内存会根据操作系统的位数来决定大小,如果是32位操作系统,那么它的大小就为2的32次方,即4G,如果是64位操作系统,就是8G.本文将分析32位操作系统。 在32位操作系统上,内存为4G,其中3G被指定为私有虚拟地址空间,1G被指定为共有空间原创 2017-08-26 22:23:53 · 304 阅读 · 0 评论 -
c++中的virtual虚函数的使用
c++类中,对于基类和派生类中函数名字相同的成员函数方法对于重载:处于同一作用域,参数类型不同,函数名相同对于隐藏(只能出现在继承结构中):函数名相同的都是隐藏,调用的时候必须加基类的作用域对于覆盖:virtual虚函数(返回值,名字,参数类型都相同)这里我们就不重点区分这些不同的方法***************这里我们重点介绍一下虚函数*******************原创 2017-10-23 11:54:53 · 1935 阅读 · 1 评论 -
malloc 和new的区别
new和malloc是经常会被人问到的问题,那么他们到底有哪些区别呢??其实他们有很多区别,以下是我总结了一些点::::一:是否调用构造函数和析构函数使用new不仅会分配空间,而且还会构造对象使用new会有三个阶段:调用operator new函数(new的重载,数组为operator new[])分配一块儿“原始的,未命名的,足够大的内存空间以便存储特定类型的对象。调原创 2017-11-07 13:48:50 · 153 阅读 · 0 评论 -
struct和class的区别
**************在c语言中,是没有class这个关键词的,在c和c++语言中struct是都可以存在的。**********************其实在c++中,struct 进行了功能上的扩充,它不再仅仅是包含不同数据类型的普通的数据结构;它不仅可以包含成员函数,而且还可以被继承,还可以实现多态,那么有了这些功能的它和class还会有什么区别呢??1》最主要的就原创 2017-11-06 20:07:27 · 207 阅读 · 0 评论 -
c++中各类型成员变量的不同方式的初始化
一:首先我们来看一下哪些成员变量必须通过构造函数的初始化列表(在构造函数体内赋值也不行)来初始化:1》const常量成员:因为常量初始化,不能赋值,所以必须放在初始化列表中进行初始化。******************************************************************************************************原创 2017-11-05 20:28:02 · 424 阅读 · 0 评论 -
c++类中浅拷贝问题和赋值问题
当一个类中没有指针类型的成员变量时,是不会发生浅拷贝的问题的但是如果存在的话,就会引发浅拷贝问题////////////////////////////////////////////////我们来举个例子////////////////////////////////////////////////class CString{public: CStrin原创 2017-09-27 19:28:38 · 477 阅读 · 0 评论 -
c和c++的区别
****一:带参数默认值???在C++中:默认值:从右向左给出,所以如果要给出参数的默认值就必须最右端开始(依次给出)(默认值可以不完全给出)比如:1》定义/*int sum(int a = 10,int b;int c = 20){ return a+b+c;}*/错误/*int sum(int a = 10,int b;int c ){原创 2017-09-10 20:36:22 · 277 阅读 · 0 评论 -
c++中带有const ,&(引用)的常见类型的错误转换
首先,编译器为什么会报错?????1:编译器会一直检测代码是否有更改st常量的可能,如果存在这样的可能,编译器就会报错。///编译器要保证不能直接或间接的去修改常量内存2:怎样看有没有错误转换呢?????(1)对于简单代码:看有没有把一个常量的地址或者引用泄露给普通的指针或者引用变量(2)对于复杂代码:找代表同一块内存的两个表达式,看是否把常量的地址试图放在一个普通指针里面原创 2017-09-16 10:07:48 · 758 阅读 · 0 评论 -
实习感悟
这个暑假去深圳实习了一个月,这是人生第一次出去工作吧,我感触颇深,就想写一篇博客记录一下,很久都没有写博客了,应该保持这样的习惯的。 我还记得第一天去公司的时候,我按照提前排好的座位坐下,对面是我的导师,我知道,我的电脑是他提前帮我装好的,哈哈,可能是因为我是实习生里唯一的妹子吧,接下来就是按照流程搭建环境,我i还记得整整弄了一个下午,当时觉得自己真的是蠢,导师说他...原创 2018-08-25 21:32:44 · 1833 阅读 · 0 评论