高手快过来帮小弟我看看这两段代码有什么区别

高手快过来帮我看看这两段代码有什么区别
BOOL   CVORecordset::SetFieldValue(LPCTSTR   pcszFieldName,   VARIANT   value)
{
if(!m_rs)
{
TRACE(TEXT( "CVORecordset::SetFieldValue()   RecordSet   COM   Object   not   initialized\n "));
return   FALSE;
}

//CVOString strFieldName(pcszFieldName);
CString   strFieldName(pcszFieldName);

for(int   iFieldIndex   =   0;   iFieldIndex   <   GetFieldCount();   iFieldIndex++)
{
if(strFieldName   ==   GetFieldName(iFieldIndex))
return   SetFieldValue(iFieldIndex,   value);
}
return   FALSE;
}

BOOL   CVORecordset::SetFieldValue(int   iField,   VARIANT   value)
{
if(!m_rs)
{
TRACE(TEXT( "CVORecordset::SetFieldValue()   RecordSet   COM   Object   not   initialized\n "));
return   FALSE;
}
HRESULT hr;
Field*   pField   =   GetField(iField);

if(!pField)
{
TRACE(TEXT( "CVORecordset::SetFieldValue()   Invalid   Field   Index\n "));
return   FALSE;
}
pField   =   GetField(iField);
hr   =   pField-> put_Value(value);
_variant_t varFieldName(GetFieldName(iField));
hr   =   m_rs-> Update(varFieldName,   value);
return   !FAILED(hr);
}

看明白的能帮我讲讲吗?非常感谢

------解决方案--------------------
你想问什么?
具体点,这两个区别其实是很多,但不知道你想知道什么方面的,建议下次问的清楚点
------解决方案--------------------
函数参数不同。
------解决方案--------------------
发现没有,第一个函数调用了第二个函数。
------解决方案--------------------
没有吧
------解决方案--------------------
"发现没有,第一个函数调用了第二个函数。 "
正解