原文:C++类this指针为空时的几个误区

代码: .结果: f ,f ,f 都会调用成功,f 调用失败。 解释: p为null,所以这个类的this指针为null。调用非静态成员函数时,编译器会默认把this指针作为第一个参数 f 本身为静态成员函数,调用静态成员变量y,不需要this指针,成功。 f 是普通成员函数,也可以调用静态成员变量y,不需要this指针,成功。 f 调用了普通成员变量,这时需要this指针了,但this为null ...

2020-02-26 01:31 0 854 推荐指数:

查看详情

C/C++ 指针的非判断

一定要分得清楚CC++的“空指针常量”不是一样的。C标准不保证NULL等于0,所以做指针判断,应该用if(p != NULL);因为“上下文转换到bool值”的统一性,C++就应该用if(p)。 ******************************************************************************************* ...

Tue Aug 26 17:48:00 CST 2014 0 4222
C++大小

为什么C++ 中空的大小是1个字节? 1、对于结构体和大小是 1个字节 这个问题,首先这是一个C++问题,在C语言下结构体大小为0 (当然这是编译器相关的)。这里的结构体是指或结构体中没有任何成员。 2、在C++下,结构体的大小是1(编译器相关),这是 ...

Mon Aug 30 04:12:00 CST 2021 0 101
C++的this指针详解

这篇文章主要讲解隐式this指针的概念,以及如何使用,包含const,基础部分不提太多 先直接给出一个C++Primer里的,你可能还不能完全看懂,但是不着急,我们一点点解释 的所有成员都必须在内部声明,但是成员函数体可以定义在外部,比如我们上面写的Sales_data,isbn ...

Mon Sep 23 23:24:00 CST 2019 0 2198
c++ 指针&new对象

class HelloWorld{ setupUi(x){}; } HelloWorld *ui; ui=new HelloWorld; ui->setup(x); \\对于非静态成员函数,只有对象可以调用其函数;这里也只有对象的指针可以调用类函数; ...

Thu Apr 25 05:42:00 CST 2019 0 1171
C++的对象和指针的区别

对于student ,定义了一个对象和一个指针指针:他是一个内存地址值,他指向内存中存放的对象(包括一些成员变量所赋的值). 对象:他是利用的构造函数在内存中分配一块内存(包括一些成员变量所赋的值). 在应用时: 1.引用成员: 对象用" . "操作符; 指针 ...

Fri Aug 02 19:55:00 CST 2019 0 4264
C++ 中“引用”与“空指针”的区别

网络上有很多讨论C++ 的“引用”与“指针“的区别的文章,谈到区别,其中有一条:“引用不能为(NULL),引用必须与合法的存储单元关联,指针则可以是NULL)”,但在实际应用中,有时候为了保持一致性,我们会抛开这个规则,人为创造出一个“引用”。 很多情况下,“引用”确实可以工作,以致于 ...

Sat Apr 18 18:41:00 CST 2020 0 2155
C++ 中判断非的错误指针

最近在写网络上的东西,程序经过长时间的运行,会出现崩溃的问题,经过DUMP文件的查看,发现在recv的地方接收返回值的时候,数据的长度异常的大差不多16亿多字节.而查看分配后的char指针显示为错误的指针,这可能是接收数据不对应产生的问题解决思路如下:   1.对返回值长度进行判断 ...

Mon May 05 18:40:00 CST 2014 0 3060
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM