Что я здесь делаю неправильно? Мне нужно сделать второй конструктор, который принимает структуру по значению.Передайте структуру конструктору
note.h
class Traymenu;
class Note : public QWidget
{
Q_OBJECT
public:
explicit Note(Traymenu *trayMenuIn, QWidget *parent = 0); //Working
explicit Note(Traymenu *trayMenuIn, struct prop bla, QWidget *parent = 0); //ERROR forward declaration of "struct prop"
note.h (алтернативной)
class Traymenu;
struct prop; //ERROR: forward declaration of "struct prop"
class Note : public QWidget
{
Q_OBJECT
public:
explicit Note(Traymenu *trayMenuIn, QWidget *parent = 0);
explicit Note(Traymenu *trayMenuIn, struct prop bla, QWidget *parent = 0); //ERROR forward declaration of "struct prop"
note.cpp
#include "note.h"
Note::Note(Traymenu *trayMenuIn, struct prop bla, QWidget *parent) : //ERROR: bla has incomplete type
Ключевое слово 'struct' можно использовать для переадресации объявления – Paranaix
@Paranaix Да, там это необходимо, но не при принятии параметра. – pmr
Я объявляю свою 'struct prop' как общедоступную переменную-член в другом классе, которая вызывает конструктор' Note'constructor. Гектометр Он не может быть ссылкой, потому что структура сразу же изменяется после вызова конструктора – user2366975