2012-02-23 3 views
3

私はプログラミングにかなり新たなんだ、と私はちょうど私がコードネストされたforループの2番目の整数にはどの命名規則を使用しますか?

for (int i = 0; i < 10; i++) 
{ 
    for (int x = 0; x < 10; x++) 
    { 
    //stuff 
    } 
} 

のこの作品で使用2番目の整数のために適切な名前がどうなるか、以下の場合には思っていた私は通常ちょうどxはそれに名前を付けるが、私はこれがすぐに混乱するかもしれないと感じています。このようなものの標準的な名前はありますか?何も意味しない、それは失読症の猿によって書かれたコードとしてのあなたに表示されます、その時点で、3ヶ月の時間にあなたのコードを理解する助けにはなりませんここix -

答えて

5

lなど。

しかし、ネスティングを開始するときは、わかりやすい名前を探してください。あなたは6ヶ月であなたに感謝するでしょう。

0

個人的に私はあなたが変数に意味のある名前を与えるべきであると感じています。

名前変数は、他の人があなたのコードが達成しようとしていることを理解できるようにします。あなたは長期的にあなた自身の時間を節約します。大会はjを使用していますiは、外側のループ変数のための最も理にかなっている例については

for(struct mail *mail=inbox->start; mail ; mailid++) { 
    for (struct attachment *att=mail->attachment[0]; att; att++) { 
     /* work on all attachments on all mails */ 
    } 
} 

を、k:あなたが繰り返し処理している、名前がコンテキストで簡単にまたは明白かもしれないものによっては

+0

私はforループの標準的なものでした。私はそれについて間違っていたと思う。ありがとう! –

+0

私はそれが本当にデファクトスタンダードだと思っています。多くのプログラミングの本やオンラインチュートリアルで使われているのを見てきましたが、forループの使い方を教えたり学んだりできます。しかし、プロダクションでは、コードの明快さがより重要であると感じています。 –

+0

なぜ、「i」と「j」は意味のある名前です。意味は、「第1 /外側ループインデックス」および「第2 /内側ループインデックス」である。 – Ingo

1

メソッド呼び出しを行うことで、ネスティングを減らすことができます。このメソッドの内部では、iというローカル変数も使用します。

for (int i = 0; i < 10; i++) 
{ 
    methodCall(array[i], array); 
} 

私はあなたが外部ループならびに内部ループで反復処理されるべき配列に位置iの要素を通過する必要があると仮定している - これは実際には異なる引数を必要とするかもしれないような仮定です。

いつもと同じように、ループの中でメソッドを呼び出す際にオーバーヘッドがかかることはありませんが、これは言語によって異なります。

0

あなたが始めていると言われてから、私は複数のスタイルを試すことが有益だと言います。

私の提案は、xjに置き換えたものです。
1文字のネストされたループ変数には、i、j、およびkの規則を使用する実際のコードがたくさんあります。

さらに意味のある名前を使用するトンもあります。

しかし、あなたの例のように見えます。

コードは実際のコードと同じように見えるので、一歩前進していると考えることができます。

関連する問題