namazu-dev(ring)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

adding prefix (Re: avoid conflict function declarations.)



prefix についての質問です。

Satoru Takabayashi <satoru-t@xxxxxxxxxxxxxxxxxx> wrote:

>>PREFIXはnmzで問題ないですよね?
>
>はい。M-x tags-query-replace でひとつづつ置き換えていけばい
>いですね。(ちょっと面倒だけど安全)

prefix は、nmz/*.[ch] に含まれる extern な関数とグローバル変
数 (減らします) だけにつければいいですか? 

extern な関数とグローバル変数の数を調べたら 164 個もありまし
た。どうやって prefix をつけるのが安全で楽だろう?

  % grep '^extern ' nmz/*.h |wc
      164     633    7358

# 最悪の場合 M-x tags-query-replace の繰り返しという単調作業
# になります。うげー。

  ...

libnamazu.h で定義されている構造体および型の名前に prefix を
つける必要はありますか?

  ...

"#define" で定義したマクロと enum の要素には prefix は不要で
すよね? (コンパイルしてしまえば単なる定数になるのだから)

# enum の方はデバッガ用のシンボルが衝突する可能性がある?

  ...

2重の読み込みを防ぐために各 include file に定義している
_FOOBAR_H のようなマクロにも NMZ という prefix をつけるべき
でしょうか? 例:

  #ifndef _NAMAZU_H
  #define _NAMAZU_H
  
    (snip)
  
  #endif /* _NAMAZU_H */

# これは perl で簡単に置き換えられる

-- Satoru Takabayashi