• 类指针引用


    类的对象指针和二级指针

     1 #include <iostream>
     2 
     3 class myclass
     4 {
     5 public:
     6     int x;
     7     int y;
     8 public:
     9     myclass(int, int);//构造函数
    10     void printxy();
    11 };
    12 
    13 myclass::myclass(int a, int b) :x(a), y(b)//构造函数
    14 {
    15 
    16 }
    17 
    18 void myclass::printxy()
    19 {
    20     std::cout << x << " " << y << std::endl;
    21 }
    22 
    23 void main()
    24 {
    25     myclass *p(new myclass(10, 9));//一级指针
    26     
    27     p->printxy();
    28 
    29     myclass class1(20, 1);
    30 
    31     myclass **pp = &p;//二级指针
    32 
    33     (*pp)->printxy();//一级指针
    34     (**pp).printxy();//0级指针
    35     
    36     system("pause");
    37 }

    通过函数改变一个指针的指向,则函数的参数需要二级指针,或者引用这个指针

     1 #include <iostream>
     2 
     3 class myclass
     4 {
     5 public:
     6     int x;
     7     int y;
     8 public:
     9     myclass(int, int);//构造函数
    10     void printxy();
    11 };
    12 
    13 myclass::myclass(int a, int b) :x(a), y(b)//构造函数
    14 {
    15 
    16 }
    17 
    18 void myclass::printxy()
    19 {
    20     std::cout << x << " " << y << std::endl;
    21 }
    22 
    23 myclass class1(10, 11);
    24 myclass class2(11, 12);
    25 
    26 void change1(myclass **pp)//二级指针
    27 {
    28     *pp = &class2;
    29 }
    30 
    31 void change2(myclass * & p)//引用一个指针
    32 {
    33     p = &class1;
    34 }
    35 
    36 void main()
    37 {
    38     myclass *p = &class1;
    39 
    40     p->printxy();
    41 
    42     change1(&p);
    43 
    44     p->printxy();
    45 
    46     change2(p);
    47 
    48     p->printxy();
    49     
    50     system("pause");
    51 }
  • 相关阅读:
    e807. 设置进程监听对话框的延迟弹出
    e806. 创建进程监听对话框
    Spring MVC静态资源处理
    SpringMVC处理方法的数据绑定
    HttpMessageConverter
    Redis中对Key进行分类
    LinkedHashMap源码剖析
    TreeMap源代码深入剖析
    CMS垃圾收集器
    @Java VisualVM 插件地址
  • 原文地址:https://www.cnblogs.com/denggelin/p/5664505.html
Copyright © 2020-2023  润新知