Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > инициализация полей класса


Автор: taiven 9.11.2009, 16:56
допустим есть класс
Код

class A
{
    public:
        int a;
};

При статическом создании объекта переменная 'a' не будет инициализирована. Произойдёт ли это при динамическом создании объекта(т.е. инициализируется ли 'а' значением по-умолчанию)?

Автор: zim22 9.11.2009, 17:20
Цитата(taiven @  9.11.2009,  15:56 Найти цитируемый пост)
. Произойдёт ли это при динамическом создании объекта(т.е. инициализируется ли 'а' значением по-умолчанию)?

это так сложно проверить?
codepad.org

Автор: azesmcar 9.11.2009, 17:24
Цитата(taiven @  9.11.2009,  16:56 Найти цитируемый пост)
При статическом создании объекта переменная 'a' не будет инициализирована. Произойдёт ли это при динамическом создании объекта(т.е. инициализируется ли 'а' значением по-умолчанию)?

это зависит.
Код

#include <iostream>

using namespace std;

struct test
{
    int a;
    int b;
};

int main()
{
    test t1;
    std::cout << t1.a << " " << t1.b << std::endl;
    test t2 = test();
    std::cout << t2.a << " " << t2.b << std::endl;
}


Код

int main()
{
    int a;
    std::cout << a << std::endl;
    int b = int();
    std::cout << b << std::endl;
}


Цитата

To default-initialize an object of type T means:
— if T is a non-POD class type (clause 9), the default constructor for T is called (and the initialization is
ill-formed if T has no accessible default constructor);
— if T is an array type, each element is default-initialized;
— otherwise, the object is zero-initialized

но это не значит что конструкторы писать не надо.

Автор: ksunya 9.11.2009, 21:45
здравствуйте!!!помогите пожалуйста....Необходимо в Си++ реализовать проект, например, регистрация заявок на бронирование сауны. Это уже идет объекто-ориентированное программирование с элементами визуализации.заранее благодарю...

Автор: zim22 9.11.2009, 21:53
Цитата(ksunya @  9.11.2009,  20:45 Найти цитируемый пост)
здравствуйте!!!помогите пожалуйста....

чем помочь то? деньгами, местом жительства?

Автор: ksunya 9.11.2009, 22:00
я же написала....Необходимо в Си++ реализовать проект, например, регистрация заявок на бронирование сауны. Это уже идет объекто-ориентированное программирование с элементами визуализации....как это сделать?

Автор: zim22 9.11.2009, 22:08
Цитата(ksunya @  9.11.2009,  21:00 Найти цитируемый пост)
как это сделать?

1) прочитать книгу об объектно-ориентированном проектировании, анализе.  освоить UML
2) выучить С++. 
3) написать приложение
как-то так smile

Автор: taiven 9.11.2009, 23:34
Цитата(ksunya @  9.11.2009,  22:20 Найти цитируемый пост)
оууууу.....супер.....

Во-первых создайте свою тему, и не флудите в чужих. Во-вторых объясните толком, в чём состоит ваш вопрос и что не получается(в своей теме, а не в этой).

Автор: bsa 10.11.2009, 16:57
ksunya, тебе сюда: http://forum.vingrad.ru/forum/topic-279573.html

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)