Иницилизация нескольких переменных

215
26 ноября 2016, 19:00

Можно ли в C++ объявить несколько переменных и сразу присвоить одинаковое значение? Пример:

Int a, b, c, d = 0;

Чтобы все переменные равны были 0.

Answer 1

Объявить несколько переменных и затем присвоить им одно и тоже значение не составляет проблему. Вы можете написать, например

int a, b, c, d;
a = b = c = d = 0;

Однако если вы хотите инициализировать переменные при их объявлении, то придется каждую переменную инициализировать отдельно. Например

int a = 0, b = 0, c = 0, d = 0;

или

int a = 0, b = a, c = a, d = a;

Простое объявление в C++ определяется следующим образом (7 Declarations)

The simple-declaration

attribute-specifier-seqopt decl-specifier-seqopt init-declarator-listopt;

где init-declarator-list определяется как (8 Declarators)

init-declarator-list:

init-declarator
init-declarator-list , init-declarator

init-declarator:

declarator initializeropt

То есть каждый декларатор (для простоты: объявляемый идентификатор) в списке имеет свой собственный инициализатор.

Answer 2

Еще можно как-то так поступить:

struct vars
{
     int a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
     vars()
     {
           ZeroMemory(this,sizeof(vars));
     }
};
READ ALSO
Проблемы с отрисовкой в SDL и ошибка SIGSEGV

Проблемы с отрисовкой в SDL и ошибка SIGSEGV

Здравствуйте! У меня проблема с функцией для вывода объекта в SDL

243
Рендеринг HTML Qt [закрыто]

Рендеринг HTML Qt [закрыто]

Имеется DOM дерево, нужен рендер на OpenGl,в QtТак как, у HTML нет координат, а OpenGL рисует по координатам, не понимаю как это сделать, по смещениям атрибутов...

247
Qt QSqlQuery CREATE DATABASE

Qt QSqlQuery CREATE DATABASE

Пишу приложение под восьмеркойИспользую MariaDB

404
Странная ошибка при компиляции Dev-c++

Странная ошибка при компиляции Dev-c++

Добрый день! Пишу простой класс на C++ при компиляции наткнулся на вот такую вот странную проблемуЯ мало что разбираю в C++, но вот мой

316