少しの研究の後、私はこのような質問を見つけられなかったと私は驚いています。なぜ静的変数に値を割り当てることができないのだろうかと思っています。私はちょうど1つのcppファイル内のクラスを作成しています任意のヘッダを使用していないコード内の静的変数
ノート(私は良い習慣を知らない)、ここで私は、これはないだろうJavaでは
main.cpp|17|error: ISO C++ forbids in-class initialization of non-const static member 'Rabbit::now'|
を取得し、エラーがあります問題
おかげ
をclass Rabbit
{
public:
string name;
string color;
int age;
bool friendly;
int happiness;
static time_t now = 4;
const int currentID;
};
* "Javaではこれは問題ではありません" * - C++はJavaとは異なる考え方を持っています – StoryTeller
C++はJavaではありません。同じような構文をしているという理由だけでも、言語そのものが似ているわけではありません。 –
これはC++で許可されていることに注意してください17、*変数が 'inline'としてマークされている場合。次に、別の定義も必要ありません。 –