я следующий код:Класс инициализации данных по умолчанию
#include <iostream>
using namespace std;
class Base
{
private:
int i;
char ch;
public:
void showdata()
{
cout<<"Int:"<<i<<endl;
cout<<"Char:"<<ch<<endl;
}
//int pub_data ;
} ;
int main()
{
Base ob;
ob.showdata() ;
//cout<<"Public Data:"<<ob.pub_data<<endl;
return 0;
}
Эта программа компилируется и работает нормально. На выходе показано, что i инициализируется 0, а ch инициализируется '\ 0'.
Если вы заметили, что я прокомментировал 2 заявления в этой программе. Сначала объявление общедоступных данных pub_data и вторая строка внутри основной печати этих общедоступных данных.
Теперь проблема заключается в том, что если я раскомментирую эти две строки, члены данных класса i.e. i, ch, pub_data, похоже, не инициализируются, и при печати они отображают значения нежелательной почты.
Итак, мой вопрос заключается в том, какие здесь общие данные о различиях?
Я использую g ++ 3.4.6
Я действительно ценю все ваши ответы, и я благодарю всех вас за это. Но тот факт, что значения нежелательных сообщений отображаются только после того, как я включаю публичный встроенный элемент данных, оставляет мне мало интересного об этом. Я также проверю это на Dev-CPP и обновляю этот пост, как только я закончу. – mukeshkumar