• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
BeyondTechnology
博客园    首页    新随笔    联系   管理    订阅  订阅
上一页 1 ··· 13 14 15 16 17 18 19 下一页
2010年9月28日
头文件
摘要: 1、头文件用于声明而不是用于定义定义只可以出现一次,而声明可以出现多次。下列语句是一些定义,不应该放在头文件里:extern int ival = 10;double fica_rate;虽然ival声明为extern,但是它有初始化式,代表这条语句是一个定义。类似地,fica_rate的声明虽然没有初始化式,但也是一个定义,因为没有关键字extern。同一个程序中有两个以上文件含有上述任一个定义... 阅读全文
posted @ 2010-09-28 22:25 BeyondTechnology 阅读(300) 评论(0) 推荐(1)
const对象默认为文件的局部变量
摘要: 在全局作用域里定义非const变量时,它在整个程序中都可以访问。可以把一个非const变量定义在一个文件中,假设已经做了合适的声明,就可以在另外的文件中使用这个变量://file_1.hint counter;  //definition//file_2.hextern int counter;  //uses counter from file_1.h++counter;    //increm... 阅读全文
posted @ 2010-09-28 22:05 BeyondTechnology 阅读(849) 评论(0) 推荐(0)
变量的声明和定义
摘要: 定义用于为变量分配存储空间,还可以为变量指定初值,在一个程序中,变量有且仅有一个定义。声明用于向程序表明变量的类型和名字。可以使用extern关键字声明变量而不定义它。extern int i;    //declares but does not define iint i;        //declares and defines iextern声明不是定义,也不分配存储空间。只是说明变量定... 阅读全文
posted @ 2010-09-28 21:36 BeyondTechnology 阅读(288) 评论(0) 推荐(0)
2010年9月24日
父类指针转换成子类指针
摘要: 有如下定义:class A {};class B : public A{};A* pA = new B;下列代码无法完成转换的是( )A) B* pB = static_cast<B*>(pA);B) B* pB = reinterpret_cast<B*>(pA);C) B* pB = dynamic_cast<B*>(pA);D) B* pB = (B*)p... 阅读全文
posted @ 2010-09-24 22:37 BeyondTechnology 阅读(2143) 评论(1) 推荐(0)
一些混淆过的输出结果
摘要: 下面代码执行后,正确的输出是( ) char *a ="Hello"; char b[6]="Hello"; if (a==b) { if (*a == *b) printf(“AA”); else printf(“BB”); } else { if (*a == *b) printf(“CC”); else printf(... 阅读全文
posted @ 2010-09-24 22:02 BeyondTechnology 阅读(311) 评论(0) 推荐(0)
输出结果
摘要: #include<iostream>#include<complex>using namespace std;class Base{public:virtual void f( int iParam){cout << "Base::f(int)" << endl;};virtual void f( double dParam){cout <&l... 阅读全文
posted @ 2010-09-24 20:58 BeyondTechnology 阅读(199) 评论(0) 推荐(0)
为什么会是这样的输出结果
摘要: #include<iostream>using namespace std;class Base{public:virtual void g( int i = 10 ){cout << i << endl;};};class Derived: public Base{public:void g( int i = 20 ){cout << "Deriv... 阅读全文
posted @ 2010-09-24 20:19 BeyondTechnology 阅读(274) 评论(0) 推荐(0)
基类指针通过子类的虚函数调用子类的非虚函数
摘要: class A {public:  virtual void op();  ……};class B : public A {public:  void op(); // 在这个函数中会调用anotherOperator,但anotherOperator不是虚函数  void anotherOp();  ……};A* a = new B;a-&... 阅读全文
posted @ 2010-09-24 19:56 BeyondTechnology 阅读(1210) 评论(0) 推荐(0)
2010年9月21日
使用sizeof计算类的大小
摘要: 类的sizeof大小一般是类中的所有成员的sizeof大小之和,这个就不用多说。不过有两点需要注意:1)当类中含有虚成员函数的时候,例如:class B{float a;public:virtual void fun(void);}此时sizeof(B)的大小为8,而不是4。因为在类中隐藏了一个指针,该指针指向虚函数表,正因为如此,使得C++能够支持多态,即在运行时绑定函数的地址。2)另一个要注意... 阅读全文
posted @ 2010-09-21 10:40 BeyondTechnology 阅读(16648) 评论(1) 推荐(6)
2010年9月20日
C++函数重定义、重载、重写
摘要: C++函数重定义、重载、重写1. 重写 (override): 父类与子类之间的多态性。子类重新定义父类中有相同名称和参数的虚函数。 1) 被重写的函数不能是 static 的。必须是 virtual 的 ( 即函数在最原始的基类中被声明为 virtual ) 。 2) 重写函数必须有相同的类型,名称和参数列表 (即相同的函数原型)3) 重写函数的访问修饰符可以不同。尽管 virtual 是 p... 阅读全文
posted @ 2010-09-20 07:23 BeyondTechnology 阅读(22694) 评论(3) 推荐(1)
上一页 1 ··· 13 14 15 16 17 18 19 下一页
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3