я в начинающем C++с ++ базовой инициализация массива из списка инициализаторов
Я думаю, что это тривиальный вопрос, но я не нашел ответ
почему этот код выдает ошибку? а если мы инициализировали массив в одной строке байт x [2] = {78,82} работает правильно?
Какая разница в указателе x в обоих случаях?
// example: one class, two objects
#include <iostream>
using namespace std;
typedef unsigned char byte;
int main() {
byte x[2];
x = {78,82};
cout << x << endl;
}
я только получаю эту ошибку из NetBeans
error: assigning to an array from an initializer list
C++, исходные массивы не могут быть (непосредственно) назначен. Вместо этого используйте 'std :: array'. Он обертывает необработанный массив в 'struct'. –
Возможно, [это] (http://stackoverflow.com/questions/15603158/error-assigning-to-an-array-from-an-initializer-list) поможет вам – Noel
Одно * сходство * заключается в том, что 'x' является не указатель в любом из случаев, это массив. – molbdnilo