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

网站开发销售简历范文新建网站网络空间

网站开发销售简历范文,新建网站网络空间,dede网站安全设置,网站权重怎么看一、构造函数 1.1特性 构造函数是特殊的成员函数#xff0c;需要注意的是#xff0c;构造函数的虽然名称叫构造#xff0c;但是需要注意的是构造函数的主要任务并不是开空间创建对象#xff0c;而是初始化对象。 1. 函数名与类名相同。 2. 无返回值。 3. 对象实例化时编…一、构造函数 1.1特性 构造函数是特殊的成员函数需要注意的是构造函数的虽然名称叫构造但是需要注意的是构造函数的主要任务并不是开空间创建对象而是初始化对象。 1. 函数名与类名相同。 2. 无返回值。 3. 对象实例化时编译器自动调用对应的构造函数。 4. 构造函数可以重载。 class Date { public :// 1.无参构造函数Date (){}// 2.带参构造函数Date (int year, int month , int day ){_year year ;_month month ;_day day ;} private :int _year ;int _month ;int _day ; }; void TestDate() {Date d1; // 调用无参构造函数Date d2 (2015, 1, 1); // 调用带参的构造函数// 注意如果通过无参构造函数创建对象时对象后面不用跟括号否则就成了函数声明// 以下代码的函数声明了d3函数该函数无参返回一个日期类型的对象Date d3(); } 如果类中没有显式定义构造函数则C编译器会自动生成一个无参的默认构造函数一旦用户显式定义编译器将不再生成。 class Date { public:private:int _year;int _month;int _day; }; void Test() { // 没有定义构造函数对象也可以创建成功因此此处调用的是编译器生成的默认构造函数 //对_year、_month、_day赋随机值Date d; } 无参的构造函数和全缺省的构造函数都称为默认构造函数并且默认构造函数只能有一个。 class Date { public:Date(){_year 1900 ;_month 1 ;_day 1;}Date (int year 1900, int month 1, int day 1){_year year;_month month;_day day;} private :int _year ;int _month ;int _day ; }; // 以下测试函数不能通过编译 void Test() {Date d1; } 二、析构函数 2.1定义 与构造函数功能相反析构函数不是完成对象的销毁局部对象销毁工作是由编译器完成的。而 对象在销毁时会自动调用析构函数完成类的一些资源清理工作。 2.2特性 1. 析构函数名是在类名前加上字符 ~。 2. 无参数无返回值。 3. 一个类有且只有一个析构函数。若未显式定义系统会自动生成默认的析构函数。 4. 对象生命周期结束时C编译系统系统自动调用析构函数。 typedef int DataType; class SeqList { public :SeqList (int capacity 10) {_pData (DataType*)malloc(capacity * sizeof(DataType));assert(_pData);_size 0;_capacity capacity; }~SeqList(){if (_pData){free(_pData ); // 释放堆上的空间_pData NULL; // 将指针置为空_capacity 0;_size 0;}} private :int* _pData ;size_t _size;size_t _capacity; }; 编译器生成的默认析构函数对会自定类型成员调用它的析构函数。 class String { public:String(const char* str jack){_str (char*)malloc(strlen(str) 1);strcpy(_str, str);}~String(){cout ~String() endl;free(_str);} private:char* _str; }; class Person { private:String _name;int _age; }; int main() {Person p;return 0; } 三、拷贝构造函数 3.1特性 1. 拷贝构造函数是构造函数的一个重载形式。 2. 拷贝构造函数的参数只有一个且必须使用引用传参使用传值方式会引发无穷递归调用。 class Date { public:Date(int year 1900, int month 1, int day 1){_year year;_month month;_day day;}Date(const Date d){_year d._year;_month d._month;_day d._day;} private:int _year;int _month;int _day; }; int main() {Date d1;Date d2(d1); //d2是d1的拷贝return 0; } 3.2  若未显示定义系统生成默认的拷贝构造函数。 默认的拷贝构造函数对象按内存存储按字节序完成拷贝这种拷贝我们叫做浅拷贝或者值拷贝。 class Date { public:Date(int year 1900, int month 1, int day 1){_year year;_month month;_day day;} private:int _year;int _month;int _day; }; int main() {Date d1; // 这里d2调用的默认拷贝构造完成拷贝d2和d1的值也是一样的。Date d2(d1); //等价于Date d2 d1;return 0; } 四、赋值运算符重载 4.1定义         C为了增强代码的可读性引入了运算符重载运算符重载是具有特殊函数名的函数也具有其返回值类型函数名字以及参数列表其返回值类型与参数列表与普通的函数类似。 函数名字为关键字operator后面接需要重载的运算符符号。 函数原型返回值类型 operator操作符(参数列表)          运算符重载是针对自定义类型对于内置类型编译器可以直接对他们做等于、大于小于等运算对于自定义类型需要利用运算符重载。 4.2特性 1.不能通过连接其他符号来创建新的操作符比如operator 2.重载操作符必须有一个类类型或者枚举类型的操作数 3.用于内置类型的操作符其含义不能改变例如内置的整型不 能改变其含义 4.作为类成员的重载函数时其形参看起来比操作数数目少1成员函数的操作符有一个默认的形参this限定为第一个形参 5. .* 、:: 、sizeof 、?: 、. 注意以上5个运算符不能重载。这个经常在笔试选择题中出现。 4.3 operator放全局和放入类中 // 全局的operator,但要注意private class Date { public:Date(int year 1900, int month 1, int day 1){_year year;_month month;_day day;} private:int _year;int _month;int _day; }; // 这里会发现运算符重载成全局的就需要成员变量是共有的无法访问private中的 bool operator(const Date d1, const Date d2) {return d1._year d2._year; d1._month d2._month d1._day d2._day; } void Test () {Date d1(2018, 9, 26);Date d2(2018, 9, 27);cout(d1 d2)endl; //-operator(d1,d2) } //operator放入类中 class Date { public:Date(int year 1900, int month 1, int day 1){_year year;_month month;_day day;}// bool operator(Date* this, const Date d2)// 这里需要注意的是左操作数是this指向的调用函数的对象bool operator(const Date d2){return _year d2._year _month d2._month _day d2._day;} private:int _year;int _month;int _day; }; void Test () {Date d1(2018, 9, 26);Date d2(2018, 9, 27);cout(d1 d2)endl; //-d1.operator(d1,d2)-d1.operator(d2) } 4.4大于运算符重载 class Date { public:Date(int year, int month, int day){_year year;_month month;_day day;}//大于bool operator(const Date d2){if (_year d2._year)return true;else if (_year d2._year _month d2._month)return true;else if (_year d2._year _month d2._month _day d2._day)return true;elsereturn false;} private:int _year;int _month;int _day; }; int main() {Date d1(2015, 1, 2);Date d2(2015, 1, 1); cout (d1 d2) endl;return 0; } 详见运算符实现一个完善日期类 C运算符重载实现一个完善日期类-CSDN博客 五、const成员  5.1 对象调用成员函数 将const修饰的类成员函数称之为const成员函数const修饰类成员函数实际修饰该成员函数隐含的this指针表明在该成员函数中不能对类的任何成员进行修改。 class Date { public:Date(int year 0, int month 1, int day 1){_year year;_month month;_day day;}void print(){cout_year-_month-_dayendl;} private:int _year;int _month;int _day; }; void f(const Date d) {d.print(); } int main() {Date d1(2018, 9, 27);f(d1); //报错return 0; } d的类型是const Date*传到Print函数里的是Date*。 所以要在Print函数里的是Date*的前面加const但this是默认不写的又该如何处理 将const放入括号外面。  p1和p2的写法没有区别。  5.2 成员函数调用成员函数 class Date { public:Date(int year 0, int month 1, int day 1){_year year;_month month;_day day;} void f1() //void f1(Date* this) {f2(); //可以 this-f2(this) } void f2() const {} // void f3() {} void f4() const {f3(); //不可以 } private:int _year;int _month;int _day; }; 总结 1. const对象可以调用非const成员函数吗 不行 2. 非const对象可以调用const成员函数吗 可以 3. const成员函数内可以调用其它的非const成员函数吗不行 4. 非const成员函数内可以调用其它的const成员函数吗可以 六、取地址及const取地址操作符重载 class Date { public :Date* operator() //Date*{coutoperator()endl;return this ;}const Date* operator()const //cosnt Date*,与上面的构成函数重载{coutoperator() constendl;return this ;} private :int _year ; int _month ; int _day ; }; int main() {Date d1;Date d2;const Date d3;coutd1endl;coutd2endl;coutd3endl; }
http://www.zqtcl.cn/news/860873/

相关文章:

  • 舟山外贸建站公司制作公司简介
  • 菜鸟是什么网站威海网站建设费用
  • 网站开发花费如何制作个人网页兼职
  • 网站鼠标特效用户体验最好的网站
  • 网站设计步骤图南通网站建设公司
  • 做盗版系统网站会不会开发次元世界
  • 下载爱南宁官方网站手机app开发软件有哪些
  • 云浮网站设计不收费的企业查询网站
  • 网站栏目怎么做iis网站筛选器被挂马
  • 网站开发中遇到的主要问题品牌营销策略包括哪些内容
  • 网站制作易捷网络十大社区团购平台有哪些
  • 哈尔滨口碑好的建站公司做网站制作一般多少钱
  • 河南网站网站制作华为品牌vi设计
  • 网站设置默认主页甘肃省第八建设集团公司网站
  • 自己做网站美工关键词优化排名网站
  • 淄博手机网站建设报价商业网站地方频道
  • 小说网站开发业务逻辑php 网站
  • 专业的做网站动态个人网站模板
  • 设计师网站设计网站开发试题库
  • 做网站是用c 吗东莞网络推广优化
  • 外贸soho网站建设wordpress配置搜索引擎优化
  • 嘉兴网站公司安卓优化大师2023
  • 电影网站开发影院座位问题正能量网站大全
  • dede手机网站更新成安专业做网站
  • 做能支付的网站贵吗品牌策划费用
  • 营销网站开发网站建设工作室
  • 如何把自己做的网站挂网上网页版梦幻西游红色伙伴搭配
  • 网站正在建设中 倒计时软件开发培训机构找极客时间
  • 贵阳网站建设搜q479185700大学网站栏目建设
  • 开发网站找什么公司吗电影网站域名