zoukankan      html  css  js  c++  java
  • 一些程序设计的笔记

    1.处理信号时,尽量避免进行复杂的操作,而是仅仅设置某个标志即可.这样能够避免一些潜在的问题,如函数重入,某个函数xxx正在写一个静态缓冲区,写了一半时,信号到来,进入信号处理函数,信号处理函数中又调用了函数xxx,这样导致信号处理完后原来的写的数据无效.

    2.定时器的实现可以依靠SIGALRM信号, 不需要自己单独搞线程,循环判断之类的搞得那么麻烦.

    简约的程序设计

    归纳为一句话就是:最方便的实现就是最好的。
    1.尽量避免类头文件之间的相互包含,一般出现这种情况可视为设计不良.
    2.一个类如果需要在多个类中使用,尝试设计为单例,不做参数传递.
    3.如果一个类的数据需要被其成员变量访,而不要直接传递类的指针给其成员变量的构造函数,而是传递需要访问的数据指针,如果需要访问的数据很多,可以考虑将该类设计为单例,在子类中直接获取该类对象,而不单独传递逐个参数.
    4.如果多个相同类需要访问同一的数据,将这份数据设为static.

    5.解决一一映射,相互查找的一种实现方式:在将其中一个数据定义为类,类中包含一个静态map,map中包含了其key到类对象的映射,在类对象中同时有该key成员变量,这样知道了该类对象,或者知道了key,都可以相互查找.

  • 相关阅读:
    好久没来园子里转了,最近在学ssh,有个小问题提出来
    ClearType使用的问题
    Metro中访问特定设备的方法
    UMDF驱动程序快速上手
    关于GPS使用上的一个怪异问题
    一个不能创建WINCE6.0工程的问题
    Metro开发小记
    在WINPE中添加驱动
    DOS命令活用
    METRO开发中的多语言处理
  • 原文地址:https://www.cnblogs.com/yulei126/p/6790292.html
Copyright © 2011-2022 走看看