码迷,mamicode.com
首页 > 编程语言 > 详细

C++基础(一)

时间:2018-04-02 22:50:25      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:C++基础

# include <iostream> # include <stdio.h> class A { public: A() :i(10) {  } virtual void f() {  std::cout << "A::f() i = " << i << std::endl; } int i; }; class B : public A { public: B() :j(20) {  } virtual void f() { std::cout << "B::f()       j = " << j<< std::endl; } int j; }; int main() { A *a = new A(); std::cout << "A *a = new A();  " << std::endl; std::cout << "a->i = " << a->i << std::endl; A b; std::cout << "A  b;   " << std::endl; std::cout << "A  c;   " << std::endl; A c; std::cout << "b.i  = " << b.i << std::endl << std::endl;; int* p = (int*)&b; int* p2 = (int*)&a; int* p3 = (int*)&c; int* p4 = (int*)*p; std::cout << "int* p4 = (int*)*p;  the *p4  is   " << *p4 << std::endl; std::cout << "int* p4 = (int*)*p;  the p4  is   " << p4 << std::endl; std::cout << "int* p3 = (int*)&c;  the *p3  is   " << *p3 << std::endl; std::cout << "int* p = (int*)&b;   the *p   is   " << *p << std::endl; std::cout << "*p2   = " << *p2 << std::endl; std::cout << "a is  a point  :  A* a = new A();  the sizeof(a) is  " << sizeof(a) << std::endl; std::cout << "b is  a object :  A            b;  the sizeof(b) is  " << sizeof(b) << std::endl<<std::endl; p++; p2++; std::cout << "*(p++)   = " << *p << std::endl; std::cout << "p++      = " << p << std::endl; std::cout << "*(p2++)  = " << *p2 << std::endl; std::cout << "p2++     = " << p2 << std::endl; /***********************************************************/ A   d; B   e; A*  pa = &e; pa->f(); char cc = getchar(); return 0; }

代码运行结果:


技术分享图片

C++基础(一)

标签:C++基础

原文地址:http://blog.51cto.com/liam2199/2094003

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!