zoukankan      html  css  js  c++  java
  • 07GDB查看变量类型

    1. whatis查看类型:
    a. 查看变量类型:eg: whatis one_person
    b. 查看函数定义:eg: whatis func_name,如果有多个同名的函数,那么只能看到一个
    c. 查看某个类的函数定义:whatis Person::app1,查看的是对象成员,而不是类成员,可以使用对象的方式来查看: whatis current_person.app1

    2. ptype查看类型的详细信息:
    a. ptype 变量;
    b. ptype /m 变量,只显示属性,不显示方法
    c. ptype /o 变量/类:查看对象属性的字节占用偏移。

    d. 有继承关系,且父类有虚函数的的时候,开启开关: set print object on,然后再使用ptype,可以查看到真实的类型

    另外:

    1. 如果一个类对对象中包含了虚函数,那么这个对象会额外增加8个字节开销,来存储虚函数表和虚继承表

    2. 如果一个类中有char*或者char[]时候,在使用GDBp命令查看类的对象的时候,都是可以将char*或者char[]中的内容直接显示出来的。

    3. 在GDB的p命令查看类的对象的时候,即便是是类的私有属性,也是可以直接显示出来的,如下图所示

  • 相关阅读:
    一个获取电脑MAC地址的方法
    一个扑克牌洗牌的实例代码
    猴子分桃问题——一个简单的递归
    浅谈单元测试
    数值统计 AC 杭电
    平方和与立方和 AC 杭电
    求奇数的乘积 AC 杭电
    第几天 switch做法 杭电
    第几天 AC 杭电
    成绩转换 AC 杭电
  • 原文地址:https://www.cnblogs.com/qiumingcheng/p/15812667.html
Copyright © 2011-2022 走看看