错误 C2039:“打开” : 不是 'std::basic_fstream 的成员

发布于 2024-12-09 19:50:30 字数 996 浏览 0 评论 0原文

当我

void fileOpen(const char*
 fname_){file_.Open(fname_,ios::in|ios::out|ios::ate|ios::binary);};

像这样调用函数 时 tempobj->fileOpen("LastID.dat");

它给了我错误

Error   23  error C2039: 'Open' : is not a member of 'std::basic_fstream<_Elem,_Traits>'

我该如何解决这个问题。这是我有这个功能的类。这是模板类

#ifndef FileHandlerh_h
#define FileHandlerh_h
#include <iostream>
#include <cstdlib>
#include <fstream>

using namespace std;
template <class T>
class FileHandler
{
    private:
        fstream file_;


    public:
        FileHandler(){};

        FileHandler(const char* fname_){fileOpen(fname_);};

        void fileOpen(const char* fname_){file_.Open(fname_,ios::in|ios::out|ios::ate|ios::binary);};

        void fileWrite(T);
        void fileSeekWrite(T,int);
        T fileRead(int);
        int getNoOfRecords();

        ~FileHandler(){file_.close();};

};

帮我解决这个问题...!!

When i call

void fileOpen(const char*
 fname_){file_.Open(fname_,ios::in|ios::out|ios::ate|ios::binary);};

Function like
tempobj->fileOpen("LastID.dat");

It gives me the error

Error   23  error C2039: 'Open' : is not a member of 'std::basic_fstream<_Elem,_Traits>'

How do i resolve this. This is the class I have this function. It is template class

#ifndef FileHandlerh_h
#define FileHandlerh_h
#include <iostream>
#include <cstdlib>
#include <fstream>

using namespace std;
template <class T>
class FileHandler
{
    private:
        fstream file_;


    public:
        FileHandler(){};

        FileHandler(const char* fname_){fileOpen(fname_);};

        void fileOpen(const char* fname_){file_.Open(fname_,ios::in|ios::out|ios::ate|ios::binary);};

        void fileWrite(T);
        void fileSeekWrite(T,int);
        T fileRead(int);
        int getNoOfRecords();

        ~FileHandler(){file_.close();};

};

Help me with this...!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

停顿的约定 2024-12-16 19:50:30

C++ 区分大小写。您需要使用 open() 而不是 Open()

C++ is case sensitive. You need to use open() instead of Open().

等风来 2024-12-16 19:50:30

也许使用小写O?在标准库中的函数名称中很少见大写字母。

Use a lowercase O, perhaps? It's quite uncommon to see capitals in function names in the standard library.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文