原创 c++運算符重載(四)

運算符進行重載的目的:C++預定義中的運算符的操作對象只侷限於基本的內置數據類型,但是對於我們自定義的類型(類)是沒有辦法操作的。但是大多時候我們需要對我們定義的類型進行類似的運算,這個時候就需要我們對這麼運算符進行重新定義,賦予其新的功

原创 初步瞭解

1. 什麼是計算機程序?什麼是編程語言?爲什麼需要編程語言?編程語言是用來幹嘛的?舉例一些編程語言,以及他們各自的特點? ① 計算機的程序是有一系列的機器指令組成的,而指令就是要計算機執行某種操作的命令。 ② 是用來定義計算機程序的形式語

原创 c++虛函數繼承與虛繼承(五)

  虛函數繼承和虛繼承是完全不同的兩個概念。 虛函數繼承是解決多態性的,當用基類指針指向派生類對象的時候,基類指針調用虛函數的時候會自動調用派生類的虛函數,這就是多態性,也叫動態編聯。可以說是針對成員函數問題,使得基類指針可以使用

原创 c++類的小知識(三)

#include <stdio.h>#include<iostream>using namespace std;class Test{    char name[10];public:    static int m_sum;   

原创 c++中virtual的用法實踐(六)

#include<iostream> using namespace std; class Employee //員工類 { public: int m_id; char *m_name; double m_mone

原创 c++設計模式(八)

設計模式分爲三大類:創建型模式,共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式。結構型模式,共七種:適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式。行爲型模式,共十一種:策略模式、模板方法模式

原创 c++的棧解旋操作(七)

#include<iostream> using namespace std; class Test { int m_a; public: Test() { cout<<"constructor"<<endl; } ~T

原创 c++類的逐步瞭解(二)

        #include <iostream>using namespace std;class Test{private: int m_a; int m_b; int m_c;public: Test(int a, int

原创 最基本的單鏈表同學錄

 #include <stdio.h> #include "string.h" #include<stdlib.h> #define NULL 0 #define LEN sizeof(struct student) struct st

原创 數組與指針(1)

#include<stdio.h> int main() {     int a[4]={1,2,3,4};     int *p=(int *)(&a+1);     printf("%d",*(p-1));     return 0;

原创 宏定義的首次接觸

 #include<stdio.h> #include<string.h> #define SQR(x)   x*x int main() {         int a;         int k=3;         a=++S

原创 C++函數對象

//函數對象: 重載函數調用操作符的類, 其對象常稱爲函數對象(function object), 即它們是行爲類 似函數的對象。 一個類對象, 表現出一個函數的特徵, 就是通過“對象名+(參數列表)”的方式 使用一個類對象, 如果沒有上

原创 sizeof的小陷阱

int main()  {  int i=1;  printf(“%d,%d\n”,sizeof(++i),i);  return 0; }  知識點在於關鍵字sizeof(i++),由於sizeof()是計算內存大小,對立面的變量數值不

原创 樹的層次遍歷,vector,,dequeue,stack

 方法在於使用隊列(queue)和數組(vector)將樹的根結點放入隊列,然後取隊頭元素,判斷這個元素對應的結點是否存在左右孩子結點,存在就將其放入隊列中,並且執行出隊操作,將隊頭元素放入數組中。   例題1、從上往下打印出二叉樹的每個

原创 練習鏈表的小應用

 在一個排序的鏈表中,存在重複的結點,請刪除該鏈表中重複的結點,重複的結點不保留,返回鏈表頭指針。 例如,鏈表1->2->3->3->4->4->5 處理後爲 1->2->5  鏈表的應用都是在瞭解了基本操作後,能夠對應不同的問題有不同的