
c++
文章平均质量分 77
XHfight
心向阳光, 绚丽绽放
展开
-
C++/C中防止头文件的重复包含的解决办法及区别
为了避免同一个文件被include多次,C/C++中有两种方式,一种是#ifndef方式,一种是#pragma once方式。在能够支持这两种方式的编译器上,二者并没有太大的区别,但是两者仍然还是有一些细微的区别。 方式一: #ifndef __SOMEFILE_H__//或写为#if !define __SOMEFILE_H__ #define __SOMEFILE_H__转载 2016-06-01 00:05:15 · 15501 阅读 · 0 评论 -
C/C++函数名称修饰规则及extern "C"的作用
一、函数名称修饰规则由于c语言不支持函数重载,而c++语言支持函数重载,所以c和c++的函数名称修饰规则是不相同的。 以下面这个Add函数为例,来探讨一下c和c++语言的函数名称修饰规则。int Add(int x, int y){ return x+y;}c语言的函数名称修饰规则: [window系统下vs2010]:(在映射文件.map中可以查看,需要右击当前原创 2016-06-26 19:50:13 · 4561 阅读 · 0 评论 -
【c++巩固练习】c++实现日期计算器、日期万年历(日期类)
日期计算器的功能:1.可以计算两个日期之间相距多少天。例:2016.5.1-2016.4.1 = 302.可以计算一个日期经过n天后的那个日期是什么。例:2016.5.1+40 = 2016.6.10代码实现如下:(环境:vs2013 语言:c++)1.Date.h#pragma once#include using namespace std;class原创 2016-07-08 17:00:07 · 5367 阅读 · 1 评论 -
【c++知识归纳】继承与多态(一)
c++是基于面向对象的编程语言,面向对象的三大特性为:封装、继承和多态。本文将我对继承与多态的理解进行了总结归纳,这部分内容对于学习c++编程语言是非常重要的,文章加入我的个人理解,希望能给大家带来帮助,如果有问题欢迎大家指出。一、继承1.什么是继承?为什么有继承?通过继承将有共同部分的、相互联系的类构成一种层次关系,共同部分组成的类一般在最顶端称为基类(父类),其他类直接或间原创 2016-08-24 02:45:19 · 3436 阅读 · 0 评论 -
【c++知识归纳】继承与多态(二)
在继承与多态(一)中简单介绍了继承与多态的基础知识,本文将从内存中深入理解c++的继承与多态。本文我选用了较低版本的IDE:【windows 10】系统的vs2008,因为高版本的处理比较复杂,为了看的更清楚,我们选择这个较低版本的编译器。1.虚函数表(虚表)class Base{public: Base() :_b(1) {} virtual void fun(原创 2016-08-26 04:50:50 · 678 阅读 · 0 评论 -
【栈和队列】一个数组实现两个栈
学习了栈和队列的基本知识后,我们要利用这些基本知识实现出更多情况的栈和队列,下面通过一些面试题使我们更灵活的设计和使用栈和队列。1.利用一个数组实现两个栈思路:我们已经学过了栈和数组,数组是一块固定大小的存储空间,栈的栈底是固定的,通过栈顶来push,pop元素。(栈顶top指向栈顶元素)通过上面的图片,就能很清晰的看到,我们要用一个数组实现两个栈的话,数组的两原创 2016-09-17 12:31:53 · 1396 阅读 · 0 评论 -
【c++】析构函数中delete this指针
在析构函数中delete this指针,会产生什么样的结果呢?先看看下面这段代码,想想运行结果。#include using namespace std;class A{public: A() { cout<<"A()"<<endl; } ~A() { cout<<"~A()"<<endl; delete this; }};int main(){原创 2016-10-22 15:49:20 · 6598 阅读 · 2 评论