1. We have moved from vBulletin to XenForo and you are viewing the site in the middle of the move. Though the functional aspect of everything is working fine, we are still working on other changes including the new design on Xenforo.
    Dismiss Notice

Error : no operator found

Discussion in 'MFC' started by answerme, Nov 19, 2008.

  1. answerme

    answerme New Member

    This is my code for the serial port
    Code:
    BOOL CSerialCom::OpenPort(CString portname)
    {
    portname= "//./" +portname;
    
    hComm = CreateFile(portname,
                          GENERIC_READ | GENERIC_WRITE,
                          0,
                          0,
                          OPEN_EXISTING,
                          0,
                          0);
    	if(hComm==INVALID_HANDLE_VALUE)
    	{
    		MessageBox("Cannot open Communication Port.Please\nQuit the program and Re-start your PC.","Com Port Error",MB_OK+MB_ICONERROR);
    		return false;
    	}
    		else
    			return true;
    
    }
    Iam getting error
    Code:
    	error C2678: binary '+' : no operator found which takes a left-hand operand of type 'const char [5]' (or there is no acceptable conversion)
    Does anyone has solution
     
  2. xpi0t0s

    xpi0t0s Mentor

    You need to cast "//./" to a CString so that it invokes CString :: operator +(). There is no (char*) :: operator +(), which is what you're trying to invoke.
     
    Last edited: Nov 19, 2008

Share This Page