Как сделать массив экземпляров класса с полем-мьютексом?

356
26 мая 2017, 15:05

Есть класс A. У него есть поле Mutex m_mutex; - вопрос: как создать глобальный массив экземпляров класса A, у него есть конструктор, который принимает одно число. Пишется ошибка - попытка доступа к удаленной функции. Подозреваю, что проблема с move-семантикой для mutex - это запрещено.

Answer 1

Как-то так:

#include <mutex>
class A {
    std::mutex m_mutex;
public:
    A(int x) {}
};
A array[3] = {{1}, {2}, {7}};
int main() {
    return 0;
}

То есть нужно явно указать аргумент конструктора каждого элемента массива.

READ ALSO
Помогите разобраться со строками в с++

Помогите разобраться со строками в с++

Суть задания состоит в том, что есть строка, и нужно вывести её, но слова в которых содержатся более 3х одинаковых букв вывести их '!'причём...

309
Нужна помощ с файлами в с++ [требует правки]

Нужна помощ с файлами в с++ [требует правки]

Элементами файла есть сведения об успеваемостиСколько в группе отличников и двоечников?Количество студентов неограничено

282
Чтение из текстового файла в QTableView

Чтение из текстового файла в QTableView

Требуется из простого текстового файла выгрузить данные построчно в QTableView (используется QStandardItemModel)Все интересующие меня данные я получаю...

338