Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
16 / 0 / 2
Регистрация: 10.11.2012
Сообщений: 117
1

C++ очередность инициализации

21.02.2018, 12:59. Показов 791. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!

Подскажите, в данном классе:
C++
1
2
3
4
5
6
7
8
9
10
11
class A{
int b = 1;
 
public:
A();
};
 
A::A()
{
  b=0;
}
В каком порядке будет проинициализировано b?

Сначала конструктором, а потом b=1 из тела класса?

Заранее большое спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.02.2018, 12:59
Ответы с готовыми решениями:

Сортировка по алфавиту С++.очерёдность
Понимаю тема обсуждалась и очень затёртая, но дайте совет. Подскажите,каким образом можно провести...

Очерёдность выполнения программы
Опишу проблему в общих чертах: Пишу на C++ Есть программа, которая должна вызывать функцию, а...

Очерёдность вызова конструкторов класса
У меня есть 2 класса, к примеру Base и Mod. Mod является наследником Base. Классу Mod...

Очередность include заголовочных файлов
Добрый день всем, есть проблема: main.cpp - include очередность: #include first #include...

2
7793 / 6560 / 2984
Регистрация: 14.04.2014
Сообщений: 28,672
21.02.2018, 13:13 2
Сначала, b = 1.
0
16 / 0 / 2
Регистрация: 10.11.2012
Сообщений: 117
21.02.2018, 13:13  [ТС] 3
nmcf, Спасибо!

Вот тоже нашел ответ:

Пример из стандарта языка п. 12.6.2/9 (кстати, вопрос относится к c++11 и в c++14 изменений не претерпел):

If a given non-static data member has both a brace-or-equal-initializer and a mem-initializer, the initialization specified by the mem-initializer is performed, and the non-static data member’s brace-or-equal-initializer is ignored. [ Example: Given

struct A {
int i = /∗ some integer expression with side effects ∗/ ;
A(int arg) : i(arg) { }
// ...
};
the A(int) constructor will simply initialize i to the value of arg, and the side effects in i’s brace-or-equal-initializer will not take place. —end example]
0
21.02.2018, 13:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.02.2018, 13:13
Помогаю со студенческими работами здесь

Сформировать очередность выезда и вьезда с гаражной стоянки
Гаражная стоянка имеет одну стояночную полосу и может разместить до 10 машин. В одном конце полосы...

Вычислить сумму ряда (не могу задать очередность знаков)
Посчитать сумму ряда: x+2x-4x+6x-8x...+ x=1 int main() { float x, h, y, n; cout << "Vvedite...

Пронумеровать очерёдность каждого сообщения так, чтобы нумерация очерёдности печаталась напротив сообщения
Покажите мне пожалуйста как можно пронумеровать очерёдность каждого сообщения так чтоб нумерация...

Ошибка инициализации
Помогите пожалуйста исправить ошибку в этой программе #include <iostream> using namespace std;...

Ошибка инициализации
При такой инициализации вылезают ошибки: error C2064: term does not evaluate to a function...

Ошибка инициализации
Доброго времени суток! У меня такая проблема, создал небольшой проект в windows forms, ну мой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru