/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
operator== problemer
Fra : Carsten Schwartz


Dato : 26-06-01 12:32

Denne konstruktion af operatro = = giver problemer:

bool CString:erator== (CString &csString)
{
return (0 == CompareNoCase((char *)csString));
}

Hvis man f.eks kalder som følger:

CString csReceiverName = "Some Unique Name";

if (csReceiverName = pNode->GetName()))
{
pReceivingNode = pNode;
}

Kommer eksekveringen ikke engang ind i koden. GetName metoden returnerer et
CString objekt - nogen forslag?





 
 
Igor V. Rafienko (26-06-2001)
Kommentar
Fra : Igor V. Rafienko


Dato : 26-06-01 13:08

* Carsten Schwartz

> Denne konstruktion af operatro = = giver problemer:
>
> bool CString:erator== (CString &csString)
> {
> return (0 == CompareNoCase((char *)csString));
> }


Case-insensitivt? Vel, vel, lykke til.


> Hvis man f.eks kalder som følger:
>
> CString csReceiverName = "Some Unique Name";
>
> if (csReceiverName = pNode->GetName()))
          ^^^

Er du sikker på at du ikke mener "==" her? :)


> {
> pReceivingNode = pNode;
> }
>
> Kommer eksekveringen ikke engang ind i koden.


op=() og op==() er 2 forskjellige ting :)





ivr
--
Amy: Psst... look what life was like before genetic engeneering.
Leela: Those poor 20th century women...
-- Futurama, "Why must I be a Crustacean in love?"

Carsten Schwartz (27-06-2001)
Kommentar
Fra : Carsten Schwartz


Dato : 27-06-01 08:51

Jeg har måske skrevet det lidt forkert i mit eksempel men jeg har faktisk
problemer..

Denne konstruktion af operator = = giver problemer:

bool CString:erator = = (CString &csString)
{
return (0 == CompareNoCase((char *)csString));
}

Hvis man f.eks kalder som følger:

CString csReceiverName = "Some Unique Name";

if (csReceiverName = = pNode->GetName()))
{
pReceivingNode = pNode;
}

Kommer eksekveringen ikke ind i operator = = koden.




Benny Andersen (28-06-2001)
Kommentar
Fra : Benny Andersen


Dato : 28-06-01 01:08

On Wed, 27 Jun 2001 09:51:26 +0200, "Carsten Schwartz"
<csn@dont.spam.cotas.dk> wrote:

>Jeg har måske skrevet det lidt forkert i mit eksempel men jeg har faktisk
>problemer..
>
>Denne konstruktion af operator = = giver problemer:
>
> bool CString:erator = = (CString &csString)
>{
> return (0 == CompareNoCase((char *)csString));
>}
Hvorfor tilføje medlemmer til MFC's CString? Dette virkede hos mig.

bool AFXAPI operator==(CString& s1, LPCTSTR s2)
   { return s1.CompareNoCase(s2) == 0; }

>Hvis man f.eks kalder som følger:
>
> CString csReceiverName = "Some Unique Name";
>
> if (csReceiverName = = pNode->GetName()))
> {
> pReceivingNode = pNode;
> }
>
>Kommer eksekveringen ikke ind i operator = = koden.
>
Er det ikke:
_AFX_INLINE bool AFXAPI operator==(const CString& s1, LPCTSTR s2)
   { return s1.Compare(s2) == 0; }
som er en del af MFC, som kaldes?
Jeg formoder her at du anvender MFC, og ikke blot har defineret din
egen CString.

-- Benny



Carsten Schwartz (28-06-2001)
Kommentar
Fra : Carsten Schwartz


Dato : 28-06-01 11:24

Jeg har defineret min egen CString som jeg bruger i et embedded miljø...

"Benny Andersen" <be99@worldonline.dk> wrote in message
news:3b3a70db.54896997@news.worldonline.dk...
> On Wed, 27 Jun 2001 09:51:26 +0200, "Carsten Schwartz"
> <csn@dont.spam.cotas.dk> wrote:
>
> >Jeg har måske skrevet det lidt forkert i mit eksempel men jeg har faktisk
> >problemer..
> >
> >Denne konstruktion af operator = = giver problemer:
> >
> > bool CString:erator = = (CString &csString)
> >{
> > return (0 == CompareNoCase((char *)csString));
> >}
> Hvorfor tilføje medlemmer til MFC's CString? Dette virkede hos mig.
>
> bool AFXAPI operator==(CString& s1, LPCTSTR s2)
> { return s1.CompareNoCase(s2) == 0; }
>
> >Hvis man f.eks kalder som følger:
> >
> > CString csReceiverName = "Some Unique Name";
> >
> > if (csReceiverName = = pNode->GetName()))
> > {
> > pReceivingNode = pNode;
> > }
> >
> >Kommer eksekveringen ikke ind i operator = = koden.
> >
> Er det ikke:
> _AFX_INLINE bool AFXAPI operator==(const CString& s1, LPCTSTR s2)
> { return s1.Compare(s2) == 0; }
> som er en del af MFC, som kaldes?
> Jeg formoder her at du anvender MFC, og ikke blot har defineret din
> egen CString.
>
> -- Benny
>
>



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste