2013-02-21 79 views
1

我喜歡Python風格,因爲它很容易讀寫。使代碼更短,避免不必要的字符,如';'要麼 '{}'。但是,我需要在工作中使用Java和C++。我可以在Java或C++中使用Python縮進樣式嗎?

我想知道是否有辦法在這些語言中使用Python縮進規則。也許存在一個Notepad ++或Eclipse的插件,可以這樣做:

當我打開一個file.java時,更改了Java縮進規則並使用Python規則對文件進行了格式設置,因此對我來說更容易閱讀。當我編輯並保存時,插件會添加所有';'和'{}'以供JVM理解。

我想你們中的一些人會認爲這是一個可怕的想法,但我只是想嘗試一下。在我看來,學習一種新的語言很有趣,但學習新的縮進規則是無聊而無用的。

+2

Python是唯一使用縮進的語言(在我的頭腦中)RULES – 2013-02-21 10:17:58

+4

@KarthikT Haskell也可以。大多數大括號分隔的語言有一些文化強制縮進規則的方言(當然,大多數大型項目都有其首選的縮進樣式)。 – Ben 2013-02-21 10:21:33

回答

6

你可以做到,但這可能是一個壞主意。堅持語言習慣可以讓你與其他開發者分享代碼。使用選項卡切換大括號會讓任何想要修補代碼的C專業人員感到困惑。

雖這麼說,nobraces轉換選項卡以括號:

不管怎樣,我還是用C相當多的嵌入式編程合同, 和蒂姆·哈奇pybraces激發了我寫的對C的類似物, 給你Python的風格縮進C.

另請參見How Python affected my C/C++ brace style通過Eli Bendersky。

+0

感謝您的鏈接,非常有趣。只要澄清一下,我不想以任何不同的格式保存我的代碼,只需將其可視化即可讀取和寫入。對於閱讀我的代碼的任何其他開發人員,代碼仍然完全相同。 – Katu 2013-02-22 10:33:31

0

雖然我不知道任何這樣的插件,但不一定有一種理智的方式來做到這一點。 有些情況下,沒有身體的循環在cpp中是有意義的。分號意圖明確,沒有它可能看起來像一個失蹤的身份。我認爲你應該只使用額外的字符,如果你習慣了增加可讀性,特別是如果你有一個編輯器來突出匹配(對應的開頭和結尾)大括號/括號。

SInce Java和cpp讓你縮進你的代碼,你仍然可以使用類似於python中的標識符。

對於沒有在C的本體迴路completness兩個示例:

等待一特殊微控制器寄存器以切換:

while(magicRegister==1); 

複製空調風格串(小心,這是容易出錯(溢出)):

while(*(strptrcpy++) = *(strptrsrc++)); 
+2

你不是真的把分號放在同一行嗎? (如果你這樣做,它可以保證任何讀你代碼的人都會錯過它,並且認爲循環控制着下面的行。) – 2013-02-21 10:32:34

+0

@JamesKanze:其實我個人也是這樣,我也使用identation,如果有一個body,即使它只有一行代碼,我也會使用開啓和關閉的大括號。我想這可以說是一個味道問題。但是我明白爲什麼人們可能希望將分號放在一個新的行中。 – ted 2013-02-21 12:09:39

相關問題