ページ内ジャンプ:
[ アカウントをゲット! ]
#define ZERO 1
一発の破壊力でこれに勝るコードを見たことが無い。
コメントを書く
昔、マジックナンバー埋め込むなって言ったら
#define ICHI 1#define NI 2#define SAN 3::for (i = 0; i SAN; i++) {}
って書いた奴が居た。その後、変更入って//#define SAN 3#define SAN 4
になったんだが同じ人?
親コメント
いえ、次の人です。前任者はSAN 0 となり発狂しました。
GNU libintlライブラリのgettextP.h [google.co.jp]にあるね、"#define ZERO 1"。
>> #define ZERO 1> すごいな…どうしてそうなったのか、それとも罠なのか。
ZERO-ONEファンの仕業だと推測。
> #こういう書き方できたっけ??? breakの所はreturnでもいいかも。
break のとこ return にしたら動作がまったく変わっちゃわない?continue にするなら大丈夫そうだけど。
「じゃあ local って書けよ」って返してあげればいいかと。
# my 付けなくても問題ないコードなら local でも大丈夫じゃないの? :)
>> #define ZERO 1>すごいな…どうしてそうなったのか、それとも罠なのか。
構造体のことをわかっていない奴が
struct hoge { int n_valid_size; int data[10];}
みたいなことをしたいのに
int data[11]
という風に書いて、data の実体を参照するのに
data[ZERO + int_valiable]
なぞとしたんではないかと思われ
Perlコードにmyが1つも無い
それどころか、今メンテしているコードの特徴:
メンテの前にロジック追って書き直しましたよ。
Perlで大規模でキレイなコードを書くのが間違ってると思う。そういう言語として設計されていないから。つまり、Perlは4.*までは短く仕事を終わらす目的だったけど、5.*以降の拡張は設計思想が変わってしまって、矛盾をはらんでいる。
myは5.*からでしょ。4.*にはなかったと思う。localはあったけど。
gettextのコードが常識かどうかは知らないが、それは最低限コメントに書かないといけないものだと思うよ。
/* iが0から10の間繰り返す。 */for (int i = 0; i 10; i++) {
}
このページのすべての商標と著作権はそれぞれの所有者が有します。 コメントやユーザ日記に関しては投稿者が有します。 のこりのものは、© 2001-2010 OSDN です。
行数とか見た目の問題ならまだマシ (スコア:5, おもしろおかしい)
#define ZERO 1
一発の破壊力でこれに勝るコードを見たことが無い。
コメントを書く
Re:行数とか見た目の問題ならまだマシ (スコア:4, おもしろおかしい)
昔、マジックナンバー埋め込むなって言ったら
#define ICHI 1
#define NI 2
#define SAN 3
:
:
for (i = 0; i SAN; i++) {
}
って書いた奴が居た。
その後、変更入って
//#define SAN 3
#define SAN 4
になったんだが同じ人?
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:2, おもしろおかしい)
いえ、次の人です。前任者はSAN 0 となり発狂しました。
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:2, 参考になる)
GNU libintlライブラリのgettextP.h [google.co.jp]にあるね、"#define ZERO 1"。
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:1, おもしろおかしい)
を見た事がある。(きちんと意味のある数値に使っていた。)
サルが書いたコードと報告したら、
先輩に "サルが聞いたら気を悪くするな。" と言われ、納得した。
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:1)
>> #define ZERO 1
> すごいな…どうしてそうなったのか、それとも罠なのか。
ZERO-ONEファンの仕業だと推測。
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:1)
> #こういう書き方できたっけ??? breakの所はreturnでもいいかも。
break のとこ return にしたら動作がまったく変わっちゃわない?
continue にするなら大丈夫そうだけど。
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:1)
「じゃあ local って書けよ」って返してあげればいいかと。
# my 付けなくても問題ないコードなら local でも大丈夫じゃないの? :)
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:2)
>> #define ZERO 1
>すごいな…どうしてそうなったのか、それとも罠なのか。
構造体のことをわかっていない奴が
struct hoge { int n_valid_size; int data[10];}
みたいなことをしたいのに
int data[11]
という風に書いて、data の実体を参照するのに
data[ZERO + int_valiable]
なぞとしたんではないかと思われ
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:1)
For i = 1 to 10 do
としたい気分で
for(i = 0; i <= 10 ; i++)
に書き間違えまくるので、
for(i = ZERO; i <= 10; i++)
に・・・とか思いかけましたが、何もうれしくないしこれ。むしろ、
#define ICHI 0
for(i = ICHI; i < 10; i ++)
で、「配列添え字が0から始まる」に慣れてない人の苦し紛れで何も解決できない工夫・・・とかの方がまだしも。
#define TRUE -1
#define FALSE 0 とか
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:1)
それどころか、今メンテしているコードの特徴:
メンテの前にロジック追って書き直しましたよ。
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:2)
Perlで大規模でキレイなコードを書くのが間違ってると思う。そういう言語として設計されていないから。
つまり、Perlは4.*までは短く仕事を終わらす目的だったけど、5.*以降の拡張は設計思想が変わってしまって、矛盾をはらんでいる。
myは5.*からでしょ。4.*にはなかったと思う。localはあったけど。
コメントを書く
親コメント
Re:行数とか見た目の問題ならまだマシ (スコア:1)
gettextのコードが常識かどうかは知らないが、それは最低限コメントに書かないといけないものだと思うよ。
/* iが0から10の間繰り返す。 */
for (int i = 0; i 10; i++) {
}
コメントを書く
親コメント