Methodenaufruf über Pointer



  • Wie geht das?

    Ich habe sowas noch nie gesehen, ein Pointer über den eine Methode (name) so denke ich aufgerufen wird.

    strFieldName = m_pFields[uField].name;

    Augenmerk auf -> .name

    Ich kenne sowas nur von Objekten z.B.: CClientDC dc(this); dc.TextOut()...

    Der gesamte Code:

    CString MySQLConnection::getField(unsigned int uField)
    {
    	CString strFieldName;
    	CString strMessage;
    
    	if (uField > getNofFields())
    	{
    		strMessage.Format("ERROR in getField():\nField number %u is greater than number of fields %u!", uField, getNofFields());
    		AfxMessageBox(strMessage);
    		strFieldName = "";
    	} // if Ende
    	else 
    	{
    		if (m_pResult == NULL) 
    		{
    			strMessage = "ERROR in getField():\nNo result set available!";
    			strFieldName = "";
    		} // if Ende
    		else 
    		{
    			strFieldName = m_pFields[uField].name;
    		} // else Ende
    	} // else Ende
    
    	return strFieldName;
    }
    


  • eine super Einführung in Function-Pointer bekommst du z.B. hier: http://www.newty.de/fpt/index.html



  • Das hat mit nichtem mit Pointer zu tun. Sondern das is ein Array von Objecten.

    Als Beipiel:

    CBitmap BM[5]; //Erzeugt ein Array mit 5 Bitmap-Objekten
        BM[0].LoadBitmap(...); //Das erste Bitmaop-Objekt wird geladen
    

    nich meht nicht weniger.

    Gruß Matthias


Anmelden zum Antworten