当前位置: 首页 > news >正文

双通网络网站建设做公益网站有什么要求

双通网络网站建设,做公益网站有什么要求,熟悉免费的网络营销方式,网络工程师中级证书一、new和delete 堆区空间操作 1、new和delete操作基本类型的空间 new与C语言中malloc、delete和C语言中free 作用基本相同 区别#xff1a; new 不用强制类型转换 new在申请空间的时候可以 初始化空间内容 2、 new申请基本类型的数组 3、new和delete操作类的空间 4、new申请…一、new和delete 堆区空间操作 1、new和delete操作基本类型的空间 new与C语言中malloc、delete和C语言中free 作用基本相同 区别 new 不用强制类型转换 new在申请空间的时候可以 初始化空间内容 2、 new申请基本类型的数组 3、new和delete操作类的空间 4、new申请操作对象数组 二、静态成员 1、概念 类的对象 拥有独立的 普通成员数据。 static 修饰的成员 叫 静态成员。 class Data {int a;//普通成员数据static int a;//静态成员数据static void func()//静态成员函数 { } }; 2、静态成员数据 static修饰的静态成员 属于类而不是对象所有对象 共享 一份 静态成员数据。 实战案例使用静态成员数据 统计对象的个数 #pragma warning(disable:4996) #includeiostream using namespace std; class Data { public:int mA;//普通成员数据static int count;//静态成员数据 public:Data(){count;}Data(int a){mA a;count;}Data(const Data ob){count;}~Data(){count--;} }; //类外初始化 int Data::count 0; void test() {Data ob1;Data ob2(10);Data ob3 ob2;cout 对象个数: Data::count endl;//3{Data ob4;Data ob5;cout 对象个数: Data::count endl;//5}cout 对象个数: Data::count endl;//3 } int main(int argc, char* argv[]) {test();return 0;}3、静态成员函数 静态成员函数直接通过类名称访问 静态成员函数内 只能操作静态成员数据因为普通成员数据还没有空间。 三、单例模式 单例模式可以保证结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问从而方便对实例个数的控制并节约系统资源。即单例模式的类 只能实例化 一个对象。 核心将构造函数私有化 #include iostream using namespace std; class SingleTon//单例模式 { //构造私有化 防止实例化其他对象 private:SingleTon(){count0;cout构造endl;}SingleTon(const SingleTon ob){count0;}~SingleTon(){cout析够endl;} private://const防止p 在类内部 被修改指向static SingleTon * const p;//保存唯一的实例地址int count;//统计任务执行次数public:static SingleTon * getSingleTon(void)//获取唯一的实例地址{return p;}//用户自定义 任务函数void printString(char *str){count;cout当前第count次任务打印:strendl;} }; SingleTon *const SingleTon::p new SingleTon;//创建唯一的实例int main(int argc, char *argv[]) {//获取单例的地址SingleTon *p1 SingleTon::getSingleTon();//执行任务p1‐printString(学历证明1);p1‐printString(身份证明1);SingleTon *p2 SingleTon::getSingleTon();p2‐printString(学历证明2);p2‐printString(身份证明2); } 四、类的存储结构 成员函数、静态成员 是独立存储 是所有对象共享不占类的空间。 五、this指针 this是一个隐藏的指针可以在类的成员函数中使用它可以用来指向调用对象。当一个对象的成员函数被调用时编译器会隐式地传递该对象的地址作为 this 指针。 this 指针是一个特殊的指针它指向当前对象的实例。每一个对象都能通过 this 指针来访问自己的地址。 this可以完成链式操作  六、const修饰成员函数  const 修饰成员函数为只读该成员函数不允许对 成员数据 赋值 mutable修饰的成员除外。 七、友元 预知识类将数据和方法封装在一起 加以权限区分 用户只能通过公共方法 操作私有数据。封装 性         定义一个函数或者类 作为了另一个类的友元 那么这个函数或类 就可以直接访问 另一个类的私 有数据。应用友元 主要用在运算符重载上         友元语法friend关键字只出现在声明处其他类、类成员函数、全局函数都可声明为友元友元函数不是类的成员不带 this指针友元函数可访问对象任意成员属性包括私有属性。 现实生活中也可以很好地理解:比如你的家有客厅有你的卧室那么你的客厅是Public的所有来的客人都可以进去但是你的卧室是私有的也就是说只有你能进去但是呢你也可以允许你的闺蜜好基友进去。程序员可以把一个全局函数、某个类中的成员函数、甚至整个类声明为友元。 1、普通全局函数 作为类的友元 2、 类的某个成员函数 作为另一个类的友元 #pragma warning(disable:4996) #includeiostream #include string using namespace std; class room;//向前声明只能说明类名称 class Frind { public:void visiting01(Room room);void visiting02(Room room); }; class Room {friend void goodGay::visiting02(Room room); private:string bedroom;//实例化对象 public:string livingroom; public:Room(string bedroom,string livingroom){this- bedroom bedroom;this- livingroom livingroom;} }; void test() {Room room(我的卧室, 我的客厅);Frind ob;ob.visiting01(room);ob.visiting02(room); } int main(int argc, char* argv[]) {test();return 0;}void Frind::visiting01(Room room) {cout 李四访问到 room.livingroom endl;//cout李四访问到room.bedRoomendl;该成员函数不是类的友元报错 }void Frind::visiting02(Room room) {cout 好基友张三访问到 room.livingroom endl;cout 好基友张三访问到 room.bedroom endl;}3、整个类作为 另一个类的友元 这个类的所有成员函数 都可以访问另一个类的私有数据 #pragma warning(disable:4996) #includeiostream #include string using namespace std; class room;//向前声明只能说明类名称 class Frind { public:void visiting01(Room room);void visiting02(Room room); }; class Room {friend class Frind; private:string bedroom;//实例化对象 public:string livingroom; public:Room(string bedroom,string livingroom){this- bedroom bedroom;this- livingroom livingroom;} }; void test() {Room room(我的卧室, 我的客厅);Frind ob;ob.visiting01(room);ob.visiting02(room); } int main(int argc, char* argv[]) {test();return 0;}void Frind::visiting01(Room room) {cout 李四访问到 room.livingroom endl;cout李四访问到room.bedRoomendl; }void Frind::visiting02(Room room) {cout 好基友张三访问到 room.livingroom endl;cout 好基友张三访问到 room.bedroom endl;}4、案例 1遥控器的类 #include iostream using namespace std; class TV; class Remote//遥控器类 { private:TV *p; public:Remote(TV *p);void offOrOn(void);//开关void upVolume(void);//音量void downVolume(void);void upChannel(void);//频道void downChannel(void);void showTv(void);void setChannel(int channel); }; class TV {friend void Remote::setChannel(int channel);enum{OFF, ON};enum{minVol, maxVol10};enum{minChan, maxChan25}; private:int state;int volume;int channel; public:TV(){state OFF;volume minVol;channel minChan;}void offOrOn(void);void upVolume(void);void downVolume(void);void upChannel(void);void downChannel(void);void showTv(void);}; int main(int argc, char *argv[]) {//实例化一个电视机TV tv;Remote re(tv);re.offOrOn();re.upVolume();re.upVolume();re.upVolume();re.setChannel(20);re.showTv();return 0; } void TV::offOrOn() {state (stateOFF?ON:OFF);return; } void TV::upVolume() {if(volume maxVol){cout音量已经最大了endl;return; }volume;return; }void TV::downVolume() {if(volume minVol){cout音量已经最小了endl;return; }volume‐‐;return; } void TV::upChannel() {if(channel maxChan){cout频道已经最大了endl;return;}channel;return; }void TV::downChannel() {if(channel minChan){cout频道已经最小了endl;return;}channel‐‐;return; } void TV::showTv() {cout当前电视机的状态:(stateOFF?关:开)endl;cout当前电视机的音量:volumeendl;cout当前电视机的频道:channelendl; } Remote::Remote(TV *p) {this‐p p; } void Remote::offOrOn() {p‐offOrOn(); }void Remote::upVolume() {p‐upVolume(); } void Remote::downVolume() {p‐downVolume(); }void Remote::upChannel() {p‐upChannel(); }void Remote::downChannel() {p‐downChannel(); }void Remote::showTv() {p‐showTv(); } void Remote::setChannel(int channel) {p‐channel channel; }2动态数组类 根据数据大小动态增减空间。 array.h #ifndef ARRAY_H #define ARRAY_H class Array { private:int *arr;//存放首元素地址int capacity;//容量int size;//大小 public:Array();Array(int capacity);Array(const Array ob);~Array();int getCapacity() const;int getSize() const;void printArray(void);//插入尾部元素void pushBack(int elem);//删除尾部元素void popBack(void);int at(int pos); };#endif // ARRAY_Harray.cpp #include array.h #includestring.h #includeiostream using namespace std; int Array::getCapacity() const {return capacity; }int Array::getSize() const {return size; }void Array::printArray() {int i0;for(i0;isize; i){coutarr[i] ;}coutendl;return; }void Array::pushBack(int elem) {//判断容器是否满if(size capacity){//申请空间int *tmp new int[2*capacity];//将就空间的内容 拷贝到新空间memcpy(tmp, arr, capacity*sizeof(int));//释放原有的空间delete [] arr;//更新arr的空间arr tmp;//更新容量capacity 2*capacity;}arr[size]elem;size;return; } void Array::popBack() {if(size 0){cout容量为空endl;} else{size‐‐;}return; } int Array::at(int pos) {if(pos0 || pos size){cout访问违法内存endl;exit(‐1);}return arr[pos]; } Array::Array() {capacity 5;size 0;arr new int[capacity];//空间清0memset(arr, 0, sizeof(int)*capacity); } Array::Array(int capacity) {this‐capacity capacity;size 0;arr new int[capacity];//空间清0memset(arr, 0, sizeof(int)*capacity); } Array::Array(const Array ob) {capacity ob.capacity;size ob.size;//深拷贝arr new int[capacity];memcpy(arr, ob.arr, sizeof(int)*capacity); } Array::~Array() {if(arr ! NULL){delete [] arr;arr NULL;} }main.c #include iostream #include array.h using namespace std; int main(int argc, char *argv[]) {Array ob;coutob.getCapacity() ob.getSize()endl;ob.pushBack(10);ob.pushBack(20);ob.pushBack(30);ob.pushBack(40);ob.printArray();coutob.getCapacity() ob.getSize()endl;ob.pushBack(50);ob.pushBack(60);ob.printArray();coutob.getCapacity() ob.getSize()endl;ob.popBack();ob.popBack();ob.printArray();coutob.getCapacity() ob.getSize()endl;coutarr[2] ob.at(2)endl;ob.at(2) 100;ob.printArray();return 0; }
http://www.zqtcl.cn/news/436322/

相关文章:

  • 大连网站排名优化价格wordpress锚文字
  • 漯河网做网站南京市建设工程档案馆网站
  • 重庆可以建建网站的平台天眼查 企业查询官网
  • gta5单机买房子网站在建设免费建小程序网站
  • 怎么制作网站设计图片劳动保障局瓯海劳务市场和做网站
  • 视屏网站制作青岛平台网站建设
  • asp网站做搜索义乌网站建设工作室
  • .net网站开发环境wordpress添加特效
  • 常州 网站制作如何找专业的网站建设公司
  • 陕西网络营销优化公司seo搜索价格
  • 山东通信局报备网站东营城镇建设规划网站
  • 建设银行如何招聘网站网站开发转包协议
  • 主流网站建设服务器有哪些电商平台
  • 网站与数据库的联系wordpress改为中文
  • 如何不让百度收录网站wix和wordpress比较
  • php开源网站 网上商城网站建设公司做销售好不好
  • 网站开发学哪种语言网站加水印
  • 帮人家做网站维护女性手机网站模板
  • 给一个企业做网站苏州网站备案查询
  • 域名备案期间怎么做网站广告投放行业
  • wordpress站内搜索统计网站突然不收录了
  • 网站源码小千个人网做网页设计一个月能挣多少
  • 贵州省建设厅公示网站广州seo网站推广费用
  • 旅游网站建设前期分析公众号制作多少钱
  • 延庆长沙网站建设怎样下载门户网站
  • flash 网站建设建设带数据搜索的网站
  • 设计网站网站名称云主机 小型网站
  • 网站建设方案书 模版公司制作网站收费标准
  • 福州企业网站html模板网站模板下载
  • 湛江自做网站城乡住建局官网