58 / 62 / 34
Регистрация: 14.03.2014
Сообщений: 916
|
||||||
1 | ||||||
Инициализация массива строк нулями18.06.2019, 18:50. Показов 3234. Ответов 15
Метки нет (Все метки)
Есть структура. Как проинициализировать значения полей '\0' ?
0
|
18.06.2019, 18:50 | |
Ответы с готовыми решениями:
15
Инициализация массива нулями с помощью {} Инициализация массива строк Инициализация массива строк string в классе Инициализация массива строк внутри класса |
Отпрыск ChatGPT
31 / 28 / 4
Регистрация: 18.06.2019
Сообщений: 143
|
||||||
18.06.2019, 18:58 | 2 | |||||
Senarist,
0
|
6340 / 3511 / 1427
Регистрация: 07.02.2019
Сообщений: 8,977
|
||||||
18.06.2019, 19:04 | 3 | |||||
1
|
Отпрыск ChatGPT
31 / 28 / 4
Регистрация: 18.06.2019
Сообщений: 143
|
|
18.06.2019, 19:12 | 4 |
zayats80888, опередил. Пришел к этому опытным путем только что, хотел исправить. В header'ах это работает?
0
|
6340 / 3511 / 1427
Регистрация: 07.02.2019
Сообщений: 8,977
|
|
18.06.2019, 19:16 | 5 |
попробуйте Добавлено через 2 минуты Senarist, забыл упомянуть, нужна поддержка с++11 для такой инициализации
0
|
Azawa
|
18.06.2019, 19:17
#6
|
Не по теме: zayats80888, Эх, я в рекстестере делал. Ну хорошо.
0
|
58 / 62 / 34
Регистрация: 14.03.2014
Сообщений: 916
|
|
18.06.2019, 19:17 [ТС] | 7 |
0
|
6340 / 3511 / 1427
Регистрация: 07.02.2019
Сообщений: 8,977
|
|
18.06.2019, 19:32 | 8 |
То что предложил Azawa нигде не сработает
Добавлено через 54 секунды круглые скобки уберите
1
|
19409 / 10028 / 2443
Регистрация: 30.01.2014
Сообщений: 17,678
|
||||||
18.06.2019, 19:35 | 9 | |||||
zayats80888, в c++98 можно так:
2
|
Отпрыск ChatGPT
31 / 28 / 4
Регистрация: 18.06.2019
Сообщений: 143
|
|
18.06.2019, 20:04 | 10 |
zayats80888, все работает. https://rextester.com/QKG50626
0
|
6340 / 3511 / 1427
Регистрация: 07.02.2019
Сообщений: 8,977
|
|
18.06.2019, 20:08 | 11 |
0
|
58 / 62 / 34
Регистрация: 14.03.2014
Сообщений: 916
|
|
18.06.2019, 20:23 [ТС] | 12 |
0
|
Отпрыск ChatGPT
31 / 28 / 4
Регистрация: 18.06.2019
Сообщений: 143
|
||||||
18.06.2019, 20:28 | 13 | |||||
zayats80888, действительно. Но почему член класса встроенного типа нельзя инициализировать списком, а переменные встроенного типа объявленные в теле функций - можно? Предупреждение не выдает, во всяком случае.
0
|
6340 / 3511 / 1427
Регистрация: 07.02.2019
Сообщений: 8,977
|
||||||
18.06.2019, 20:34 | 14 | |||||
у вас там не так написано, вы вот это попробуйте
1
|
Отпрыск ChatGPT
31 / 28 / 4
Регистрация: 18.06.2019
Сообщений: 143
|
||||||
18.06.2019, 21:04 | 15 | |||||
zayats80888, Понял свою ошибку. Моя проблема была в том, что до этого я ошибочно предполагал, что список инициализации членов класса это какая-то особенная конструкция присваивания, а не явный вызов a(x), и поэтому считал, что круглые скобки обязательны. Теперь все стало ясно, значит, в данном случае они не нужны. Спасибо.
А такое ошибочное суждение вызвали многочисленные примеры кода, где встроенные типы вроде int так же инициализируются только через круглые скобки. Но я не понимаю, почему нельзя использовать =, так же могло быть намного понятнее:
0
|
6340 / 3511 / 1427
Регистрация: 07.02.2019
Сообщений: 8,977
|
|
18.06.2019, 21:09 | 16 |
Azawa, если с английским дружите, тут можно почитать, например https://en.cppreference.com/w/... ialization
1
|
18.06.2019, 21:09 | |
18.06.2019, 21:09 | |
Помогаю со студенческими работами здесь
16
Инициализация членов класса нулями Инициализация объекта нулями или мусором инициализация массива, вывод массива и обработка массива должны быть реализованы с помощью функций. Забивание нулями строк Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |