首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

error C2065: undeclared identifier解决方案

2012-08-27 
error C2065:undeclared identifier初学C++,麻烦各位大神帮帮忙,很简单的程序:基类:C/C++ code#ifndef BAS

error C2065: undeclared identifier
初学C++,麻烦各位大神帮帮忙,很简单的程序:
基类:

C/C++ code
#ifndef BASE_H#define BASE_Hclass Base{public:    size_t size() const { return n; }    Base(size_t n1 = 0) : n(n1){}protected:    size_t n;};#endif扩展类:#ifdef DERIVED_H#define DERIVED_H#include "Base.h"class Derived : private Base{public:    using Base::size;    Derived(size_t n1 = 0):Base(n1),n(n1){}protected:    using Base::n;};#endif测试类:#include <iostream>#include "Derived.h"using namespace std;int main(){    int i = 3;    Derived d(i);    cout << d.size() << endl;    return 0;}


调试的时候出现如下错误:

--------------------Configuration: 7 - Win32 Debug--------------------
Compiling...
7.cpp
C:\Documents and Settings\user\桌面\C++\7.cpp(6) : error C2065: 'Derived' : undeclared identifier
C:\Documents and Settings\user\桌面\C++\7.cpp(6) : error C2146: syntax error : missing ';' before identifier 'd'
C:\Documents and Settings\user\桌面\C++\7.cpp(6) : error C2065: 'd' : undeclared identifier
C:\Documents and Settings\user\桌面\C++\7.cpp(7) : error C2228: left of '.size' must have class/struct/union type
执行 cl.exe 时出错.

7.obj - 1 error(s), 0 warning(s)



麻烦问一下错在哪,该怎么改呢,谢谢

[解决办法]
扩展类:
#ifdef DERIVED_H
#define DERIVED_H
 
这里要改成
#ifndef DERIVED_H
#define DERIVED_H

热点排行