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

老干支部网站建设方案阿里云 wordpress

老干支部网站建设方案,阿里云 wordpress,高校网站建设规范,东莞有哪家比较好的网站建设公司一、前言 在C中#xff0c;接口指针或类对象的函数参数传递是一个常见的做法#xff0c;特别是在需要支持多态或动态绑定时。这里将介绍如何传递接口指针或类对象作为函数参数。 二、函数参数传递的几种类型 抽象类#xff08;接口#xff09;的实例只能通过指针或引用传…一、前言 在C中接口指针或类对象的函数参数传递是一个常见的做法特别是在需要支持多态或动态绑定时。这里将介绍如何传递接口指针或类对象作为函数参数。 二、函数参数传递的几种类型 抽象类接口的实例只能通过指针或引用传递不能作为值传递。具体类的实例可以通过指针、值或引用传递。指针传递和值传递都会创建对象的副本而引用传递会直接操作原始对象。 示例代码 #include iostream // 定义一个接口类 class IMyInterface { public:virtual void myMethod() 0; // 纯虚函数必须被实现 }; // 定义一个类它实现了IMyInterface接口 class MyClass : public IMyInterface { public:void myMethod() override {std::cout MyClass::myMethod called std::endl;} }; /// summary /// 指针传递传递抽象类的实例的指针 /// /summary /// param nameinterfacePtr/param void doSomething1(IMyInterface* interfacePtr) {interfacePtr-myMethod(); }/// summary /// 错误用法不允许使用抽象类类型作为函数参数也就是说不能实例化。 /// /summary /// param nameinterfacePtr/param //void doSomething2(IMyInterface interfacePtr) { // interfacePtr.myMethod(); //}/// summary /// 引用传递 需要传递抽象类的实例对象的引用. /// /summary /// param nameinterfacePtr/param void doSomething3(IMyInterface interfacePtr) {interfacePtr.myMethod(); }/// summary /// 对象的指针传递 /// /summary /// param namepMyCalss/param void doSomething4(MyClass* pMyCalss) {pMyCalss-myMethod(); }/// summary /// 值传递会创建myObj的副本 /// /summary /// param namemyObj/param void doSomething5(MyClass myObj) {myObj.myMethod(); }/// summary /// 引用传递直接操作原始对象 /// /summary /// param namemyObj/param void doSomething6(MyClass myObj) {myObj.myMethod(); }int main() {MyClass obj;IMyInterface* pMyInterface obj;doSomething1(pMyInterface);//doSomething2(obj); 错误用法doSomething3(*pMyInterface);doSomething4(obj); doSomething5(obj); doSomething6(obj);return 0; }1.抽象类接口的实例的指针传递 /// summary /// 指针传递传递抽象类的实例的指针 /// /summary /// param nameinterfacePtr/param void doSomething1(IMyInterface* interfacePtr) {interfacePtr-myMethod(); }int main() {MyClass obj;IMyInterface* pMyInterface obj;doSomething1(obj);doSomething1(pMyInterface);return 0; } 将抽象类指针作为函数参数传递。这允许函数接受任何实现了抽象类接口的类的实例。 2.抽象类接口的实例值传递错误用法 /// summary /// 编译时错误抽象类不能被实例化不允许使用抽象类类型作为函数参数也就是说不能实例化。 /// /summary /// param nameinterfacePtr/param //void doSomething2(IMyInterface interfacePtr) { // interfacePtr.myMethod(); //}抽象类不能被实例化因此不能作为值传递给函数。 3.抽象类接口的实例的对象的引用传递 /// summary /// 引用传递 需要传递抽象类的实例对象的引用. /// /summary /// param nameinterfacePtr/param void doSomething3(IMyInterface interfacePtr) {interfacePtr.myMethod(); }int main() {MyClass obj;IMyInterface* pMyInterface obj;doSomething3(*pMyInterface);return 0; }将抽象类对象的引用作为函数参数传递。这允许函数直接访问和修改原始对象。 4.实例对象的指针传递 /// summary /// 对象的指针传递 /// /summary /// param namepMyCalss/param void doSomething4(MyClass* pMyCalss) {pMyCalss-myMethod(); }int main() {MyClass obj;IMyInterface* pMyInterface obj;doSomething4(obj); return 0; }将具体类对象的指针作为函数参数传递。这允许函数接受任何实现了抽象类接口的类的实例。 5.实例对象的值传递 /// summary /// 值传递会创建myObj的副本 /// /summary /// param namemyObj/param void doSomething5(MyClass myObj) {myObj.myMethod(); } int main() {MyClass obj;doSomething5(obj); return 0; }将具体类对象作为值传递给函数。这创建了一个对象的副本因此函数内部对对象的修改不会影响原始对象。 6.实例对象的引用传递 /// summary /// 引用传递直接操作原始对象 /// /summary /// param namemyObj/param void doSomething6(MyClass myObj) {myObj.myMethod(); }int main() {MyClass obj;doSomething6(obj);return 0; }将具体类对象的引用作为函数参数传递。这允许函数直接访问和修改原始对象。 三、注意事项 当传递接口指针时确保指针指向的对象确实实现了该接口。当传递类对象时确保对象的状态不会因为函数的调用而受到影响除非函数是类的成员函数。引用参数可以避免拷贝对象提高效率。指针参数可以接受空指针引用参数不能接受空引用。通过接口指针或类对象的传递可以编写出更加灵活和可扩展的代码。
http://www.zqtcl.cn/news/211863/

相关文章:

  • 低价网站建设制作设计公司网站怎样做地理位置定位
  • 贵州网站seo织梦网站后台默认登陆路径
  • 杭州网站设计哪家公司好百度搜索网站显示图片
  • 新乡专业做淘宝网站房地产平面设计网站
  • 三亚谁做网站做网站导航的
  • 厦门酒店网站建设建设网站文案
  • 17网站一起做网店质量怎么样合肥网站建设维护
  • 建站公司外包怎么搭建手机网站m
  • 用ps做网站设计济南品牌网站制作便宜
  • 个人可做网站需要什么材料可以做3d电影网站
  • 温州网站建设专家网站推广软件推广
  • 24淘宝网站建设编程做网站
  • 公司网站模板怎么做自适应网站设计尺寸
  • 滨州正规网站建设价格简单网站制作
  • 创建网站平台电商系统源码
  • 滕州本地网站建设网站维护中模版
  • 商城类网站设计制作开发公司 张庆
  • seo擦边球网站宝安网站制作
  • 文山北京网站建设wordpress漂亮破解主题
  • 做网站需要什么证明嘛wordpress和自己写
  • 蚌埠市网站建设公司网站建设 技术 哪些
  • 网站收录查询临沂seovisual c 网站开发
  • 国际空间站vs中国空间站做网站在哪里接活
  • 怎样宣传网站营销外包公司
  • 工程网站模板制作教程具有价值的专业网站建设平台
  • 用wex5可以做网站吗邯郸seo快速排名
  • 高端品牌网站建设兴田德润可信赖网络运营方案怎么写
  • 新公司网站建设合肥关键词排名优化
  • 网站排名优化+o+m西安网络推广平台公司
  • 找网站建设公司需要注意什么常州网站建设公司好么