1.

默认构造函数和不带参数的构造函数之间无联系

默认构造函数是编译器发现类不存在显式构造函数时自动生成的无参数的构造函数。同样,用户可以定义显示的无参数构造函数。

2.

在构造函数、析构函数中调用virtual 函数。并不会得到预期的结果。virtual函数在此时会"丢失"virtual性质。

3.

构造函数无参数的时候

 #ifndef UNTITLED2_TEST_H
#define UNTITLED2_TEST_H #include <stdio.h>
class test {
public:
test()
{
printf("call test()\n");
}
test(char c)
{
printf("call test(char)");
}
}; #endif //UNTITLED2_TEST_H
 #include "test.h"
int main() {
test t;//申明一个变量
test tt();//声明一个函数。
test tc('c'); //申明一个变量
return ;
}
/Users/like1/CLionProjects/untitled2/cmake-build-debug/untitled2
call test()
call test(char)
Process finished with exit code 0

test t();并不会像test t;调用test::test()构造函数,仅仅是申明了一个函数,返回类型是test,无参数,函数名是t。

4.

test tc = t;

test* t = &tc;

并不会调用operator=(test& t);而是调用test(test& t);

5.

new delete 和 malloc() free() 的行为存在共性,但不等价。

new 和 delete 会在分配内存后调用类的构造函数,析构函数。

6.

test t;
test tt = t;

这样的定义语句不一定正确。

#ifndef UNTITLED2_UN_COPY_ASSIGN_H
#define UNTITLED2_UN_COPY_ASSIGN_H class un_copy_assign {
public:
un_copy_assign();
private:
un_copy_assign(un_copy_assign& c);
un_copy_assign& operator=(un_copy_assign& c);
}; #endif //UNTITLED2_UN_COPY_ASSIGN_H
#ifndef UNTITLED2_TEST_H
#define UNTITLED2_TEST_H #include "un_copy_assign.h"
#include <stdio.h>
class test : public un_copy_assign{
public:
test():un_copy_assign()
{
printf("call test()\n");
}
test(char c):un_copy_assign()
{
printf("call test(char)");
}
}; #endif //UNTITLED2_TEST_H

http://www.cnblogs.com/like1/p/6852528.html

C++ 中的一些错觉的更多相关文章

  1. CGroup Namspace

    CGroup 介绍 CGroup 是 Control Groups 的缩写,是 Linux 内核提供的一种可以限制.记录.隔离 进程组 (process groups) 所使用的物力资源 (如 cpu ...

  2. ASP.Net Core开发(踩坑)指南

    ASP.NET与ASP.NET Core很类似,但它们之间存在一些细微区别以及ASP.NET Core中新增特性的使用方法,在此之前也写过一篇简单的对比文章ASP.NET MVC应用迁移到ASP.NE ...

  3. C# -- HttpWebRequest 和 HttpWebResponse 的使用 C#编写扫雷游戏 使用IIS调试ASP.NET网站程序 WCF入门教程 ASP.Net Core开发(踩坑)指南 ASP.Net Core Razor+AdminLTE 小试牛刀 webservice创建、部署和调用 .net接收post请求并把数据转为字典格式

    C# -- HttpWebRequest 和 HttpWebResponse 的使用 C# -- HttpWebRequest 和 HttpWebResponse 的使用 结合使用HttpWebReq ...

  4. (Python OpenGL)【5】平移 PyOpenGL

    (Python OpenGL) 原文:http://ogldev.atspace.co.uk/www/tutorial06/tutorial06.html  (英文) 下面是我翻译过来的: 背景 在本 ...

  5. 15、docker

    15.0.服务器使用说明: 服务器名称 ip地址 controller-node1 172.16.1.90 15.1.docker介绍: 1.Docker 是一个开源的应用容器引擎,基于 Go 语言 ...

  6. Python开源框架

    info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...

  7. 浅解析js中的对象

    浅解析js中的对象 原文网址:http://www.cnblogs.com/foodoir/p/5971686.html,转载请注明出处. 前面的话: 说到对象,我首先想到的是每到过年过节见长辈的时候 ...

  8. Windows中使用OpenBLAS加速R语言计算速度

    在使用R的时候会发现R对CPU的利用率并不是很高,反正当我在使用R的时候,无论R做何种运算R的CPU利用率都只有百分子几,这就导致一旦计算量大的时候计算时间非常长,会给人一种错觉(R真的在计算吗?会不 ...

  9. PHP中的SESSION机制

    [转] php中cookie和session是我们常用的两个变量了,一个是用户客户端的,一个用在服务器的但他们的区别与工作原理怎么样,下面我们一起来看看cookie和session机制原理吧.   c ...

随机推荐

  1. 将spring cloud打包docker镜像

    简介:用spring cloud构建微服务后,微服务肯定要docker镜像化然后用rancher等可视化工具管理,这就是走完了一套基本的流程,现在简单介绍下 环境:两台centos7.x的服务器,一台 ...

  2. React-native 初始化项目很慢

    我是在Mac环境下,利用facebook开源的react-native创建原生app项目缓慢的问题 一:确定自己的环境配置是否有问题 二:打开终端,输入命令行 brew install wget 点击 ...

  3. Docker系列一之基础快速入门企业实战

    1.1什么是LXC LXC为Linux Container的简写.Linux Container容器是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚 ...

  4. Android通过AOP实现防止按钮连续点击

    防止连续点击的实现方式有很多种,比如,在所有的onclick里面加上防多次点击的代码,或者定义一个新的OnClickListener,在里面加上防多次点击的代码,然后项目中的所有OnClickList ...

  5. 使用NPOI生成Excel级联列表

    目录 1    概要    1 2    磨刀不误砍柴工——先学会Excel中的操作    2 3    利用NPOI生成导入模板    7 3.1    设置workbook&sheet   ...

  6. 51单片机I/O口直接输入输出实例(附调试及分析过程)

    51单片机P0/P1/P2/P3口的区别: P0口要作为低8位地址总线和8位数据总线用,这种情况下P0口不能用作I/O,要先作为地址总线对外传送低8位的地址,然后作为数据总线对外交换数据: P1口只能 ...

  7. 细谈UITabBarController

    1.简述 UITabBarController和UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,UITabB ...

  8. IO流输入 输出流 字符字节流

    一.流 1.流的概念 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作. ...

  9. angular 实现自定义样式下拉菜单

    自己闲着没事写了一个自定义的下拉菜单希望和大家交流一下!望能和大神们成为朋友. 下面上代码: <!doctype html> <html lang="en" ng ...

  10. 创建,删除DOM

    需求说明: 1.上传图片,有删除功能,可上传5张,至少上传一张 html代码如下 <div class="imgUpBox"> <div class=" ...