我收到了“错误C2039:'_ file':不是'_iobuf'的成员”当我试图从VS2010迁移到VS2015时如何解决它? [英] I am getting "error C2039: '_file': is not a member of '_iobuf'" when i tried to migrate from VS2010 to VS2015 how to resolve it?

查看:1687
本文介绍了我收到了“错误C2039:'_ file':不是'_iobuf'的成员”当我试图从VS2010迁移到VS2015时如何解决它?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

#ifdef WIN32

int CMXReader :: Fseek(FILE * stream,__ int64 Offset,int origin)

#else

int CMXReader :: Fseek(FILE * stream,off_t Offset,int origin)

#endif

{

#ifdef WIN32

long int handle;

__ int64错误;

#else

int error;

#endif



#ifdef WIN32

handle = stream-> _file;



// error = _lseeki64(handle,Offset,origin);

错误= VFSEEK(流,偏移,来源);
$
#else

#ifdef SGI

error = fseek64(stream,Offset,origin);

#else

error = fseek(stream,Offset,origin);
$
#endif

#endif



if(error == -1)

return(-1);

否则b
return(0);

}

#ifdef WIN32
int CMXReader::Fseek( FILE *stream, __int64 Offset, int origin )
#else
int CMXReader::Fseek( FILE *stream, off_t Offset, int origin )
#endif
{
#ifdef WIN32
long int handle;
__int64 error;
#else
int error;
#endif

#ifdef WIN32
handle = stream->_file;

//error = _lseeki64( handle, Offset, origin );
error = VFSEEK(stream,Offset,origin);
#else
#ifdef SGI
error = fseek64( stream, Offset, origin );
#else
error = fseek( stream, Offset, origin );
#endif
#endif

if ( error == -1 )
return( -1 );
else
return( 0 );
}

推荐答案

#ifdef WIN32

int CMXReader :: Fseek(FILE * stream,__ int64 Offset,int origin)

#else

int CMXReader :: Fseek(FILE * stream,off_t Offset,int origin)

#endif

{

#ifdef WIN32

long int handle;

__ int64错误;

#else

int error;

#endif



#ifdef WIN32

handle = stream-> ; _file;
$


// error = _lseeki64(handle,Offset,origin);

错误= VFSEEK(流,偏移,来源);

#else

# ifdef SGI

error = fseek64(stream,Offset,origin);

#else

error = fseek(stream,Offset,origin);

#endif

#endif



if(error == -1)

return(-1);

else

return(0);

}
#ifdef WIN32
int CMXReader::Fseek( FILE *stream, __int64 Offset, int origin )
#else
int CMXReader::Fseek( FILE *stream, off_t Offset, int origin )
#endif
{
#ifdef WIN32
long int handle;
__int64 error;
#else
int error;
#endif

#ifdef WIN32
handle = stream->_file;

//error = _lseeki64( handle, Offset, origin );
error = VFSEEK(stream,Offset,origin);
#else
#ifdef SGI
error = fseek64( stream, Offset, origin );
#else
error = fseek( stream, Offset, origin );
#endif
#endif

if ( error == -1 )
return( -1 );
else
return( 0 );
}

参见
https://connect.microsoft.com / VisualStudio / feedback / details / 1419290 / file-is-not-a-member-of-iobuf-bug



如果y你想获得一个文件desriptor你可以使用
_fileno function


这篇关于我收到了“错误C2039:'_ file':不是'_iobuf'的成员”当我试图从VS2010迁移到VS2015时如何解决它?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆