Hi,
Normally one believes that the string functions of VFP are much fast;
this is correct, but it is not a general rule.
In this example, it comes used OCCURS() and AT in order to obtain the same information:
One string appears more than N times in an other string.If the routines of AT and OCCURS they were both written best,
time for execute the request would have to be practically identical.
Instead the difference is of 10x 15x (1000% - 1500%)
Example code for N=19
sString = ''
FOR J=1 TO 20
sString = m.sString +','+REPLICATE('a',100)
NEXT
? 'Lenght = ',LEN(m.sString)
t1=SECONDS()
FOR k=1 TO 50000
=OCCURS(",",m.sString)>19
NEXT
? "OCCURS",SECONDS()-t1
t1=SECONDS()
FOR k=1 TO 50000
=AT(",",m.sString,20)>0
NEXT
? "AT",SECONDS()-t1
Then, exist native VFP command that C++ can speedup.
Fabio