none
Como incluir uma estrutura de de outra estrutura. RRS feed

  • Pergunta

  • struct item {

    int codigo;

    float valor;

    };

    item d_item;

    struct Glob{

    float desconto;

    item x = new item[20];   // aqui está errado e não sei como consertar.

    };

    Alguém pode me ajudar ?

    Em C++ funcionava assim.

    typedef struct {
    	char	nome[29];
    	char	codigo[13];
    	float	qtde;
    	float	prunit; 
    	float	descon;	
    	float	pretot;
    	float	vended;
    	UINT	strib;
    	UINT	nitem;
    	int	codint;
    } d_item;
    
    typedef struct 
    	{
    	DWORD			m_Ident;
    	char			m_DtAtual[11];
    	char			m_DtAnter[11];
    	DWORD			m_Transaction;
    	BOOL			m_FlgVnda;
    	int			m_FileNum;
    	int			m_Timer;
    	int			m_FDes;
    	int			m_Ite;
    	d_item	item[250];
    	int			m_ClienteNumero;
    	char			m_ClienteNome[30];
    } glob;
    glob glb;
    
    

    quinta-feira, 25 de fevereiro de 2016 11:43

Todas as Respostas

  • Olá Sebastião,

    O problema acontece porque você está tentando inserir uma array em uma variável simples. Somente corrija a linha 

    item x = new item[20]; para -> item[] x = new item[20];

    Conforme código abaixo:

    struct item
    {
    
        int codigo;
    
        float valor;
    
    };
    
    struct Glob
    {
    
        float desconto;
    
        item[] x;
    }

    Você não pode instanciar as propriedades do struct dentro dele, deve instanciar no momento de utilizar.

            Glob glb = new Glob();
            glb.x = new item[20];
    


    sábado, 14 de maio de 2016 01:19