日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

wyh 的 Code Style

發布時間:2024/4/15 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 wyh 的 Code Style 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參考GNAQ學長大人的Code Style

Rust式代碼風格:

預編譯指令:

順序:

  • pragma

  • include

  • define

  • undef

縮進:

define undef 繼承上層縮進,其余不縮進。

寫法:

  • include 中能使用 < > 的盡量不要使用 " "

  • include 中不使用空格。

  • define undef 中允許被定義的宏為全部大寫或全部小寫,其余情況不允許使用大寫。

限制:

不使用 #if #else #elif #endif #ifdef #ifndef #endif #line #error 以及其他預編譯命令。

命名空間:

寫法:

總是使用 using namespace std 或 導入

  • using std::cin
  • using std::cout
  • using std::endl
  • using std::min
  • using std::max

等在代碼出現過的 std namespace 中的函數。

命名空間中可以使用 #define ,但必須
在結尾處 #undef,且 #define 指令應置于命名空間的開頭處。

任何大型數據結構使用其大寫簡寫為名稱的單獨 namespace , 如
namespace KDT namespace SGT namespace TRP,并總是在命名空間的結尾處 } 后綴一分號 ';' ,例如:

namespace SGT {#define LCH tree[inx].ch[0]#define RCH tree[inx].ch[1]void func1(){// .....}#undef LCH#undef RCH };

順序:

應置于代碼開頭處的所有預編譯指令之后。

縮進:

繼承上層縮進。

花括號:

寫法:

使用 \(Allman\) 式花括號,也即花括號換行。 例如:

void Func1() {for (;;){// ...}if (case){// ....}else{if (case 2){// ..}else { Func2(); return; }} }

在任何代碼片段中不使用任何 逗號', ' 運算符連接兩個語句,其正確格式為:

for (;;) {Func1();Func2(); }

也即一對花括號的每一個前后都有一個空格,語句之間也有一個空格。

注意:

及時內部只有一條語句的iffor等也必須用大括號括起來。

行:

寫法:

每行不可以有多個(兩個及以上)語句。

多個意義獨立的代碼塊之間應用一個空行隔開 ;

非空行尾不應有多余的空格 ;

using namespace std; 后有一空行 ;

函數、成員函數、結構體、全局變量塊之間必須用空行隔開。

if for while 等語句,若其后只有一條語句 (或嵌套) ,可以直接縮進 而無需花括號 " { } "

縮進:

繼承上層縮進 。

小括號:

寫法:

除聲明及調用函數時的括號緊跟其他字符外,任何成對小括號的前后必須有一個空格隔開其他字符,如:

for (;;)Func1();if (case1) {.. }int i = (j * 100 + log2(100) );

若右括號** ')'** 后接的是分號 ';' 則空格可以省略。

指針與引用:

寫法:

\(OI\) 代碼中不使用指針。

引用部分采用 Rust 式命名,任何引用前的標識符 '&' 和引用變量之間用一個空格隔開,若前有類型標識符,則引用標識符緊跟類型標識符,如

void Func1(int& q, int& t) {int a, b;int& aref = a, & bref = b; }

縮進:

繼承上層縮進 。

函數:

寫法:

函數采用大駝峰命名法,選擇性地加入下劃線 **'_'** ,如:

void Update() {··· } int Qry() {··· } Mat Gauss_Elimination() {··· }

空函數體必須為以下格式:

void Func1() {}

縮進:

繼承上層縮進 。

空格:

寫法:

  • 逗號前后都不能有空格。

  • 冒號的兩側必須有一空格。

  • '++' '--' 前/后不需空格。

  • 形如 vector< pair<int, int> > 的聲明,每對 <> 前后空格需要對稱。

  • '::' '.' 的兩側不應有空格。

  • 初始化列表前后不需空格,如 max({a, b, c});

縮進:

繼承上層縮進 。

注釋:

縮進:

繼承上層縮進。

寫法:

  • 單行注釋使用 \(//\) ,之后應有一空格,如 \(// do\ something\)

  • 多行注釋使用 \(/* */\) ,其中 \(/*\)\(*/\) 應獨占一行,且 \(/*\)\(*/\) 后應有一空行,例如:

int func1() {int a=1,b=2;/*return 3;*/return a+b; }

轉載于:https://www.cnblogs.com/oierwyh/p/11122837.html

總結

以上是生活随笔為你收集整理的wyh 的 Code Style的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。