think it clear: const, char, format

来源:互联网 发布:阿里云wamp环境搭建 编辑:程序博客网 时间:2024/04/29 04:30

写出糟糕的代码会带来糟糕的感觉和生活,尽管它运行的很好。

有时候我们面临着多种选择,这样也可,那样也可,但是哪一个才是那最精准,带着脆响的一投呢? 

今天遇到几个值得斟酌,需要think it clear的问题:

1, const:

void func( type* arg);

看到这句话我们脑海里闪现这样一些信息:

a, 这是用指针传递参数来代替整个类型的复制

b, 这个arg指向的内容可能会被改变

但是如果其实我们并不改变,那么这个声明就没有最确切的表达意思,下面就非常确切

void func(const type* arg);
   class type
   {
     public:
         const int* mMember;
   };

----不仅进了球,而且很脆的空心,读代码和写代码的人都感到很享受。

2, char and unsigned char

在表述字符的时候,用unsigned char更加合理

3, if

bool judge()
{
   
if(a)
   
{
       
if(b)
       
{
              
return true;
        }
else
        
{
              
return false;
        }

   }
else
   
{
        
return false;
    }

}

这个也的确是对的写法,但是无论自己写起来还是别人读起来,真是混乱的格式,不如改成:

bool judge()
{
if(a==false)
   
return false;
if(b==false)
   
return false;
if(...)
....;
   
return true;
}

这样层层筛选的意思就表达的十分确切

原创粉丝点击