Qt下使用QDebug打印指针地址

Qt下使用QDebug打印指针地址,是个很好用的方法。

   qDebug()<<"parent--1"<<this->parent();

输出为:

指针的输出精确的解释了指针的物理地址(待商榷),以及指针的类型。

//----------------------------------------------

我遇到的问题,

我把一个子Widget放到了一个父Widget中,

并且在这个父Widget中添加了一个QScrollArea,把子Widget放到了QScrollArea里面。

我在子Widget的某个函数中需要使用父Widget下的函数,

需要使用this->parent指针获取到父类的指针,

但是通过上面的打印指针的方法发现获取到的是QScrollArea的指针,

我知道QScrollArea的parent才是我要的父Widget,所以我是用this->parent()->parent()获取到了真正的父Widget.

大家可以按照自己的情况,多多使用这种方法来解决自己的问题。

时间: 2024-10-13 19:58:32

Qt下使用QDebug打印指针地址的相关文章

用calloc分配10块大小为4字节的内存空间,打印指针地址,并且打印出内存中的内容

#include<stdio.h> #include<stdlib.h> #include<string.h> int main(void) { int  i; int *str = NULL; str = (int*)calloc(10, sizeof(int)); if(str==NULL) { printf("calloc error!\n"); return -1; } printf("start addr: %p\n",

使用malloc分别分配2KB的空间,然后用realloc调整为6KB的内存空间,打印指针地址

#include<stdio.h> #include<stdlib.h> #include<string.h> #include<malloc.h> int main(void) { int *str1 = NULL; int *str2 = NULL; str1 = (int*)malloc(2*1024*sizeof(char)); if(str1==NULL) { printf("malloc error!\n"); return

使用malloc分别分配2KB,6KB的内存空间,打印指针地址

#include<stdio.h> #include<stdlib.h> #include<string.h> #include<malloc.h> int main(void) { int *str1 = NULL; int *str2 = NULL; str1 = (int*)malloc(2*1024*sizeof(char)); str2 = (int*)malloc(6*1024*sizeof(char)); if(str1==NULL || st

QXmlStreamReader/QXmlStreamWriter实现Qt下xml文件读写

版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QXmlStreamReader/QXmlStreamWriter实现Qt下xml文件读写     本文地址:http://techieliang.com/2017/12/714/ 文章目录 1. 介绍  1.1. QXml-Token标记类型  1.2. 范例xml文件 2. 写xml 3. 读xml  3.1. 其他 1. 介绍 帮助文档:QXmlStreamReader.QXmlStr

如何让Qt程序能在cmd命令行下输出qDebug信息

若让Qt程序能在cmd命令行下输出qDebug()信息, 则在pro文件中增加: WIN32: CONFIG += console 即可. 启动qt程序时会弹出一个cmd框和一个ui框,就可以看到调试信息了.

利用指针地址偏移打印一维数组

// //  main.c //  利用指针地址偏移打印一维数组 // // Created by wanghy on 15/7/24. // Copyright (c) 2015年 wanghy. All rights reserved. // #include <stdio.h> #define len 10 int main(int argc, const char * argv[]){ //定义一个存放  int 类型元素的一维数组. int arry[]={1,2,3,4,5,6,7

打印指针指向的地址值

废话不多说,直接上错误代码: static void print_cpu_src(uint8_t * src,int stride){ int i,j; printf("Magnum cpu src addr == %p, stride ==%d:\n",&src,stride); for (i = 0; i < 11; ++i) { printf("\n"); for (j =0; j < 4; ++j) { printf("%d ,

Qt下libusb-win32的使用方法(转)

源:Qt下libusb-win32的使用方法 之前一直找不到适合WIN7下的Tiny6410的USB下载软件,正好这几天开始学习USB,所以打算自己写一个专门用于Tiny6410的WIN7下的USB下载软件. 发现了libusb这个库可以用作无驱USB开发,就是说根本不需要了解Window驱动开发的知识就可以开发USB设备驱动,只需要了解一下USB的相关协议即可.Windows下我几乎不用VS来写程序,或者说我不懂MFC吧,呵呵,所示我用Qt来做界面.好了,进入正题. 首先下载libusb-wi

QT下资源使用和资源占用…(可以动态加载资源文件,这样不占内存)

原文地址:关于QT下资源使用和资源占用内存过多的问题作者:技术成就梦想 最近研究了一下如何从外部动态调用图片的问题,从而研究了图片资源的使用方法.网上最常见的帖子是这个,感觉总结的还不错. http://www.cnblogs.com/lzjsky/archive/2012/08/20/2647471.html 总的来说,就两种方式. 一种就是使用qrc资源文件,也就是在QT的工程中添加资源文件,这个方法比较简单容易操作,对于初学者来说比较容易上手,在资源比较少的时候可以使用.但是也有它的缺点,