例えば私のCar.cpp
をすることができ、私のclass Car
を実装している私は車というクラスを定義Car.h
を持っている、と私は実装Car.cppがあるとします。C++データ構造オブジェクトの寿命はどのくらいですか?
struct Helper { ... };
Helper helpers[] = { /* init code */ };
Car::Car() {}
char *Car::GetName() { .....}
? static Helper helpers[];
と言う必要がありますか? 悪い習慣をやったことがあるなら、私に知らせてください。
私は質問を誤解して掲載しましたが、これは正しいです。彼が投稿したコードはヘッダファイルだと思った!いずれにせよ、ベストプラクティスは.CPPファイルに対して 'ヘルパー'をローカルにするために 'static'を使うことです(これは意図していると思われます)。 – andrewdski
@andrewdski、そうです。しかし、 'Helper'は' .cpp'ファイル内で宣言されているので、 'helper []'が 'static'かどうかにかかわらず、何の効果もありません。 – iammilind
グローバルな名前空間を汚染します。後で彼がTruck.cppを書き、 'helper'配列も必要であるとします。 – andrewdski