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

哪里有网站培训的中国建筑网校

哪里有网站培训的,中国建筑网校,给家乡做网站,岳阳seo外包6. 相关技术知识补充 6.1 不定参函数 在初学C语⾔的时候#xff0c;我们都⽤过printf函数进⾏打印。其中printf函数就是⼀个不定参函数#xff0c;在函数内部可以根据格式化字符串中格式化字符分别获取不同的参数进⾏数据的格式化。 ⽽这种不定参函数在实际的使⽤中也⾮常…6. 相关技术知识补充 6.1 不定参函数 在初学C语⾔的时候我们都⽤过printf函数进⾏打印。其中printf函数就是⼀个不定参函数在函数内部可以根据格式化字符串中格式化字符分别获取不同的参数进⾏数据的格式化。 ⽽这种不定参函数在实际的使⽤中也⾮常多⻅在这⾥简单做⼀介绍 不定参宏函数 #include iostream #include cstdarg #define LOG(fmt, ...) printf([%s:%d] fmt \n, __FILE__, __LINE__, ##__VA_ARGS__) int main() {LOG(%s-%s, hello, world);return 0;}C⻛格不定参函数 #include iostream #include cstdarg void printNum(int n, ...) {va_list al;va_start(al, n);//让al指向n参数之后的第⼀个可变参数for (int i 0; i n; i) {int num va_arg(al, int);//从可变参数中取出⼀个整形参数std::cout num std::endl;}va_end(al);//清空可变参数列表--其实是将al置空 } int main() {printNum(3, 11,22,33);printNum(5, 44,55,66,77,88);return 0; }#include iostream #include cstdarg void myprintf(const char *fmt, ...) {//int vasprintf(char **strp, const char *fmt, va_list ap);char *res;va_list al;va_start(al, fmt);int len vasprintf(res, fmt, al);va_end(al);std::cout res std::endl;free(res); } int main() {myprintf(%s-%d, 你好, 世界);return 0; }C⻛格不定参函数 #include iostream #include cstdarg #include memory #include functional void xprintf()//参数包为空的特化 {std::cout std::endl; } templatetypename T, typename ...Args//C11可变参数包 void xprintf(const T value, Args ...args) {std::cout value ;if ((sizeof ...(args)) 0) {xprintf(std::forwardArgs(args)...);}else {xprintf();} } int main() {xprintf(你好);xprintf(你好, 19);xprintf(你好, 我的心上人, 19);return 0; }6.2 设计模式 设计模式是前辈们对代码开发经验的总结是解决特定问题的⼀系列套路。它不是语法规定而是⼀套⽤来提高代码可复⽤性、可维护性、可读性、稳健性以及安全性的解决方案。 六大原则 • 单一职责原则Single Responsibility Principle 1.类的职责应该单⼀⼀个方法只做⼀件事。职责划分清晰了每次改动到最⼩单位的⽅法或类。 2.使⽤建议两个完全不⼀样的功能不应该放⼀个类中⼀个类中应该是⼀组相关性很⾼的函数、数据的封装 3.⽤例⽹络聊天⽹络通信 聊天应该分割成为⽹络通信类 聊天类 • 开闭原则Open Closed Principle 对扩展开放对修改封闭 2.使⽤建议对软件实体的改动最好⽤扩展⽽⾮修改的⽅式。 3.⽤例超时卖货商品价格—不是修改商品的原来价格⽽是新增促销价格。 • 里氏替换原则Liskov Substitution Principle 通俗点讲就是只要父类能出现的地⽅子类就可以出现⽽且替换为子类也不会产⽣任何错误或异常。 1.在继承类时务必重写父类中所有的⽅法尤其需要注意父类的protected方法子类尽量不要暴露自己的public⽅法供外界调⽤。 2.使⽤建议子类必须完全实现父类的⽅法孩子类可以有⾃⼰的个性。覆盖或实现⽗类的⽅法时输⼊参数可以被放大输出可以缩小 3.⽤例跑步运动员类-会跑步⼦类⻓跑运动员-会跑步且擅⻓⻓跑 ⼦类短跑运动员-会跑步且擅⻓短跑 • 依赖倒置原则Dependence Inversion Principle 1.高层模块不应该依赖低层模块两者都应该依赖其抽象. 不可分割的原子逻辑就是低层模式原子逻辑组装成的就是高层模块。 2.模块间依赖通过抽象接口发生具体类之间不直接依赖 3.使⽤建议每个类都尽量有抽象类任何类都不应该从具体类派⽣。尽量不要重写基类的方法。结合里氏替换原则使⽤。 4.⽤例奔驰车司机类–只能开奔驰 司机类 – 给什么⻋就开什么⻋ 开车的⼈司机–依赖于抽象 • 迪米特法则Law of Demeter又叫“最少知道法则” 1.尽量减少对象之间的交互从而减⼩类之间的耦合。⼀个对象应该对其他对象有最少的了解。 2.对类的低耦合提出了明确的要求 只和直接的朋友交流 朋友之间也是有距离的。⾃⼰的就是⾃⼰的如果⼀个⽅法放在本类中既不增加类间关系也对本类不产⽣负⾯影响那就放置在本类中。 3.用例⽼师让班⻓点名–⽼师给班⻓⼀个名单班⻓完成点名勾选返回结果⽽不是班⻓点名⽼师勾选 • 接口隔离原则Interface Segregation Principle 1.客户端不应该依赖它不需要的接⼝类间的依赖关系应该建立在最小的接⼝上 2.使用建议接⼝设计尽量精简单⼀但是不要对外暴露没有实际意义的接口。 3.⽤例修改密码不应该提供修改⽤户信息接⼝⽽就是单⼀的最⼩修改密码接口更不要暴露数据库操作 从整体上来理解六⼤设计原则可以简要的概括为⼀句话⽤抽象构建框架⽤实现扩展细节具体到每⼀条设计原则则对应⼀条注意事项 • 单⼀职责原则告诉我们实现类要职责单⼀ • ⾥⽒替换原则告诉我们不要破坏继承体系 • 依赖倒置原则告诉我们要⾯向接⼝编程 • 接口隔离原则告诉我们在设计接⼝的时候要精简单⼀ • 迪米特法则告诉我们要降低耦合 • 开闭原则是总纲告诉我们要对扩展开放对修改关闭。
http://www.yingshimen.cn/news/19050/

相关文章:

  • 网站漂浮广告怎么做中国新闻社邮箱
  • 有趣的网站小游戏网址杭州网站优化平台
  • 灰色网站如何宣传自己的网站
  • 网站建设与运维建设局的全称
  • 怎么用wordpress打开网站中国核工业第五建设有限公司官网
  • 局域网网站开发软件想学ui设计
  • 松江手机网站开发湖南专业做网站公司
  • 网站设计规划方案百度搜索引擎优化怎么做
  • 设计师招聘网站有哪些seo就业
  • 网站建设深圳公司哪家好赣州信息港房产网
  • 互动力 网站建设昆明网站建设培训班
  • 扶风做企业网站wordpress过滤器插件6
  • 深圳网站优化最好的方法佛山市住房和建设局网站首页
  • 网站页面框架设计wordpress 空白
  • 哪家网站专做女性服装正常做网站多少钱
  • 北京如何做网站网页外贸网站建设推广培训
  • 展示用网站模板免费下载网站的主页按钮怎么做
  • 山东做网站建设的好公司哪家好莱芜网页定制
  • 工具站seo网站建设标题
  • 网站建设 生产辽宁人社app一直更新
  • 织梦游戏网站源码牛网网站建设
  • 济南网站建设 行知科技做不锈钢网站
  • 做网站要提供营业执照吗安徽网站优化多少钱
  • 投资网站实名认证可以做吗做淘宝优惠劵网站服务器配置
  • 装饰工程规范四川seo推广
  • 山东省省建设厅网站网站哪个好用
  • 做app和做网站区别建设网站多少钱 2017
  • 藁城 网站广州小型网站建设公司
  • 注册网站账号审核不通过无法登陆怎么办网站开发项目安全加固的要求
  • 哪个网站做初中英语试题赚钱妇女之家网站建设方案