Qt Coding Style

本文介绍了QT官方的编程风格,包括缩进使用4空格,变量定义每个占一行并避免无意义名字,空格使用规则,圆括号的使用,Switch语句的格式,跳转语句的处理以及换行的规范,旨在提升代码的可读性和质量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述:

为了养成良好的代码风格,今天查看了QT官方的编程风格文档。

缩进:

用4空格缩进,tab全部设置为4个空格

变量定义:

  • 1> 每个变量占用一行
 // Wrong
 int a, b;
 char *c, *d;

 // Correct
 int height;
 int width;
 char *nameOfThis;
 char *nameOfThat;
  • 2> 避免无意义名字
// Wrong
int t;

// Correct
int time;
  • 3> 单字符变量只用于循环计数和临时变量的场景
  • 4> 变量使用时再定义,让变量定义与使用尽可能相邻,增加可读性
  • 5> 变量和函数以小写字母开头,且名称中连续单词要以大写字母开头
qDebug()
  • 6> 尽量避免缩写
// Wrong
short Cntr;
char ITEM_DELIM = ' ';

// Correct
short counter;
char itemDelimiter = ' ';
  • 7> 类名总是以大写字母开头
QXmlStreamReader

空格:

  • 1> 语句与语句之间只使用一个空行相隔
  • 2> 在关键字与括号之间使用一个空格
// Wrong
if(foo)
{
}

// Correct
if (foo) 
{
}
  • 3> 符号’*’ 、’&’与类型之间相隔一个空格,与变量名之间不使用空格
char *x;
const QString &myString;
const char * const y = "hello";
  • 4> 强制转换与表达式之间不使用空格,且不使用C风格的强制转换
// Wrong
char* blockOfMemory = (char* ) malloc(data.size());

// Correct
char *blockOfMemory = reinterpret_cast<char *>(malloc(data.size()));
  • 5> 不要在一行书写多个表达式
// Wrong
count += 1; time += 1; 

// Correct
count += 1;
time += 1; 
  • 6> 控制语句和表达式不要直接写在一行
// Wrong
if (foo) bar();

// Correct
if (foo)
{
    bar();
}

圆括号:

  • 1> 使用圆括号将复杂表达式组织起来,增加代码可读性
// Wrong
if (a && b || c)

// Correct
if ((a && b) || c)

// Wrong
a + b & c

// Correct
(a + b) & c

Switch语句:

  • 1> Switch 和 Case、default单词对齐且相左顶格
switch (myEnum) {
case Value1: break;
case Value2: break;
case Value3: break;
default: beak;
}
  • 2> 每一个Case都应该有break语句, 如果因为业务需求某一个Case不需要Break需要注释说明
switch (myEnum) {
case Value1:
  doSomething();
  break;
case Value2:
case Value3:
  doSomethingElse();
  // fall through
default:
  defaultHandling();
  break;
}

跳转语句:

  • 1> 在不影响对称性和功能的时候减少else的使用
 // Wrong
 if (thisOrThat)
     return;
 else
     somethingElse();

 // Correct
 if (thisOrThat)
     return;
 somethingElse();

换行:

  • 1> 如果表达式占用多行,将操作符放在新行的开头
// Wrong
if (longExpression +
    otherLongExpression +
    otherOtherLongExpression) 
{
}

// Correct
if (longExpression
    + otherLongExpression
    + otherOtherLongExpression) 
{
}

Tips:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值