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

wordpress做社区网站内部网站建设公司

wordpress做社区网站,内部网站建设公司,宁波网站seo诊断工具,网站建设需要域名还有什么对于普通类型的对象来说#xff0c;它们之间的复制是很简单的#xff0c;例如#xff1a; int a88; int ba; 而类对象与普通对象不同#xff0c;类对象内部结构一般较为复杂#xff0c;存在各种成员变量。下面看一个类对象拷贝的简单例子。 #include iostreamu… 对于普通类型的对象来说它们之间的复制是很简单的例如 int a88; int ba; 而类对象与普通对象不同类对象内部结构一般较为复杂存在各种成员变量。下面看一个类对象拷贝的简单例子。 #include iostream using namespace std; class CExample { private:      int a; public:      CExample(int b)      { ab;}      void Show ()      {         coutaendl;     } }; int main() {      CExample A(100);      CExample BA;      B.Show ();      return 0; } 运行程序屏幕输出100。从以上代码的运行结果可以看出系统为对象B分配了内存并完成了与对象A的复制过程。就类对象而言相同类型的类对象是通过拷贝构造函数来完成整个复制过程的。下面举例说明拷贝构造函数的工作过程。 #include iostream using namespace std; class CExample { private:     int a; public:     CExample(int b)     { ab;}          CExample(const CExample C)     {         aC.a;     }     void Show ()     {         coutaendl;     } }; int main() {     CExample A(100);     CExample BA;     B.Show ();     return 0; } CExample(const CExample C)就是我们自定义的拷贝构造函数。可见拷贝构造函数是一种特殊的构造函数函数的名称必须和类名称一致它的唯一的一个参数是本类型的一个引用变量该参数是const类型不可变的。例如类X的拷贝构造函数的形式为X(X x)。 当用一个已初始化过了的自定义类类型对象去初始化另一个新构造的对象的时候拷贝构造函数就会被自动调用。也就是说当类的对象需要拷贝时拷贝构造函数将会被调用。以下情况都会调用拷贝构造函数 一个对象以值传递的方式传入函数体 一个对象以值传递的方式从函数返回 一个对象需要通过另外一个对象进行初始化。 如果在类中没有显式地声明一个拷贝构造函数那么编译器将会自动生成一个默认的拷贝构造函数该构造函数完成对象之间的位拷贝。位拷贝又称浅拷贝后面将进行说明。 自定义拷贝构造函数是一种良好的编程风格它可以阻止编译器形成默认的拷贝构造函数提高源码效率。 浅拷贝和深拷贝 在某些状况下类内成员变量需要动态开辟堆内存如果实行位拷贝也就是把对象里的值完全复制给另一个对象如AB。这时如果B中有一个成员变量指针已经申请了内存那A中的那个成员变量也指向同一块内存。这就出现了问题当B把内存释放了如析构这时A内的指针就是野指针了出现运行错误。 深拷贝和浅拷贝可以简单理解为如果一个类拥有资源当这个类的对象发生复制过程的时候资源重新分配这个过程就是深拷贝反之没有重新分配资源就是浅拷贝。下面举个深拷贝的例子。 #include iostream using namespace std; class CA {  public:   CA(int b,char* cstr)   {    ab;    strnew char[b];    strcpy(str,cstr);   }   CA(const CA C)   {    aC.a;    strnew char[a]; //深拷贝    if(str!0)     strcpy(str,C.str);   }   void Show()   {    coutstrendl;   }   ~CA()   {    delete str;   }  private:   int a;   char *str; }; int main() {  CA A(10,Hello!);  CA BA;  B.Show();  return 0; } 深拷贝和浅拷贝的定义可以简单理解成如果一个类拥有资源(堆或者是其它系统资源)当这个类的对象发生复制过程的时候这个过程就可以叫做深拷贝反之对象存在资源但复制过程并未复制资源的情况视为浅拷贝。 浅拷贝资源后在释放资源的时候会产生资源归属不清的情况导致程序运行出错。 Test(Test c_t)是自定义的拷贝构造函数拷贝构造函数的名称必须与类名称一致函数的形式参数是本类型的一个引用变量,且必须是引用。 当用一个已经初始化过了的自定义类类型对象去初始化另一个新构造的对象的时候拷贝构造函数就会被自动调用如果你没有自定义拷贝构造函数的时候系统将会提供给一个默认的拷贝构造函数来完成这个过程上面代码的复制核心语句就是通过Test(Test c_t)拷贝构造函数内的p1c_t.p1;语句完成的。
http://www.lebaoying.cn/news/14865.html

相关文章:

  • 长春网站制作外包网站开发 q3687474
  • 做网站多少钱外贸网站建设报价表
  • 阿里云建设网站南宁市住房和城乡建设部网站
  • 网站开发要考什么证做物流的网站有哪些
  • 58同城网站建设排名搜索引擎推广的费用
  • 石龙镇网站建设国外做农产品有名的网站
  • 网站建设程序员做什么杭州公司注册地址可以是住宅吗
  • 室内设计网站免费模板脑白金广告
  • 中国建设银行互联网网站洛阳高端网站建设
  • 建立个人网站的成本wordpress 链接美化
  • 网站开发电话话术制作网站注册登录模块的思维导图
  • 深圳市龙岗区做网站的公司长沙企业网站设计
  • 做网站 郑州公司有哪些哪个网站可以做担保交易
  • 网站开发哪好wordpress首页调用文章缩略图
  • 电商网站代码设计羽毛球赛事最新消息
  • 横翻网站模版免费企业cms建站系统
  • 深圳优秀网站建设长春高新
  • 家居企业网站建设咨询网页制作视频教程到哪里下载
  • 内蒙做网站网站内容品质
  • 淄博手机网站效果图培训
  • erp开发和网站开发常州网站seo
  • 多用户网站哈尔滨十大广告公司
  • 医院信息化建设会议安排网站单机网页制作
  • 石排网站设计邀请注册推广赚钱
  • 易营宝自助建站系统114黄页网推广
  • 贷款公司如何做网站互动网站设计
  • 怎么备份网站wordpress突然访问不
  • 网站服务器更换拱墅抖音seo搜索排名推广
  • uc做购物网站哈尔滨建站服务网站开发
  • 优质网站策划wordpress文章显示