0

他の例もあるかもしれませんが、これは私が見つけたものです。

#include <iostream>
using namespace std;

class Student
{
  public:
    int x; 
};

int main()
{
  Student rts;
  Student* heap = new Student;

  cout << rts.x   << endl; // prints out random integer
  cout << heap->x << endl; // prints out 0
}

この背後に理解すべき正当な理由や論理はありますか?

4

2 に答える 2

1

この場合、割り当てられたメモリでヒープがすでにゼロになっているのは偶然だと思います。

この同様の質問への回答で詳細を読むことができます

于 2013-06-28T13:02:49.563 に答える
0

常に変数を意味のあるものに初期化してください。それ以外の場合は、任意の値をランダムに取ることができます。

class Student {
public:
    int x;
Student(): x(0) {}
};
于 2013-06-28T13:00:35.707 に答える