Time of Update: 2018-08-02
前言 說起C++中的繼承、多態、虛函數等概念,可能很多同學都有所瞭解,但是要說真正熟知的同學可能就不是很多了。最近在編程過程中瞭解到C++類型的層次轉換(這就涉及到了多態和繼承的相關機率),通常C語言中可以對內建類型進行強制轉換,但是這樣做不是很安全,在C++標準中,提供了關於類型層次轉換中的兩個關鍵字static_cast和dynamic_cast。 一、static_cast關鍵字(編譯時間類型檢查) 用法:static_cast < type-id > (
Time of Update: 2018-08-02
nullptr null 指標是不會指向有效資料的指標,以前用0表示,但是這使得0既可表示指標常量,又可表示整型常量。C++11仍允許使用0來表示null 指標,因此運算式nullptr==0為true,使用nullptr表示null 指標而不是0提供了更高的型別安全。 智能指標 如果指標ps有一個解構函式,該解構函式將在ps到期時釋放它指向的記憶體。因此,問題在於它只是一個常規指標,不是有解構函式的類對象。如果它是對象,則可以在對象到期時,讓它的解構函式刪除指向的記憶體。
Time of Update: 2018-08-02
由於項目需求,今天寫了一個小軟體,軟體實現檔案資料的讀取,把讀取到的檔案資料每位元組高低位轉換後輸出到bin檔案。 首先點擊匯入按鈕,可以選擇各種檔案。選中檔案後,第一個textbox顯示所選擇的檔案的地址,然後“匯出”按鈕使能,“瀏覽”按鈕能夠供使用者選擇匯出的bin檔案儲存的地方。 接下來看看需要的知識點: 1.匯入檔案的選擇 使用OpenFileDialog類開啟檔案選取對話方塊,選定檔案後把檔案的路名寫入textbox1中
Time of Update: 2018-08-02
如果希望使用C#進行後台域登入,需要使用到advapi32.dll這個程式集。advapi32.dll是一個進階API應用程式介面服務庫的一部分,包含的函數與對象的安全性,註冊表的操控以及事件記錄有關。xp系統一般位於C:\WINDOWS\system32\目錄下,大小659KB。 下面是實現域登入的代碼: public class SimulateDomainService { public static bool
Time of Update: 2018-08-02
1.1前言 1.本文是博主本著虛心學習的態度與大家交流,博文難免會有錯誤之處,希望大家指正; 2.本文是針對對C語言以及映像放大的基礎討論,如是大牛們可以直接忽略本文; 3.運行環境:由於在不同電腦配置和系統上的已耗用時間有差異,本程式的測試平台:電腦CPU為Intel奔騰雙核E6500,主頻2.93GHZ記憶體4GB.虛擬機器為10.0版的VMware,linux系統為Fedora16
Time of Update: 2018-08-02
在學帶餘除法時上面只提到了正整數的帶餘除法,餘數自然應該是非負不大於除數的數了;很多地方也迴避了負數的除法中餘數是正數還是負數。避免C++求餘數出現負數解決辦法:假設被除數是 a,除數是 b。有兩種方法:1. 先令 r = a % b,然後如果 r < 0 再進行修正:r = a % b;if (r < 0) r += b;2. 直接使用語句:r = (a%b+b)%b;這樣就保證了 r >= 0,缺點是要執行兩次取餘運算,效率會打點折扣。
Time of Update: 2018-08-02
vector是C++中用來代替內建數組的一個容器。 它是C++標準庫的一部分。 使用它時必須包含預先處理#include<vector>。 vector有兩種用法: 1。vector<int> vector(elem_size) 該種方法的括弧裡的內容不僅僅可以是元素的個數。 vector不能像C中的數組一樣初始化 int array[6] = {1, 2, 3, 4, 5, 6};
Time of Update: 2018-08-02
前言:作為一個安卓程式員,如果不懂C/C++開發,那麼安卓jni、NDK、視頻解碼、音頻解碼也沒法開發,有需求我們就要學習,加油吧。今天開始我們快速講解C語言,有Java基礎的人適合看本部落格。 -----------分割線-------- 關於C語言記憶體配置主要有: 1.棧區(stack):windows下,棧記憶體配置2M,超出限制,提示stack overflow錯誤,可以自動分配和釋放(重點) 2.堆區(heap):需要我們手動分配和釋放,最大占作業系統的80%記憶體,
Time of Update: 2018-08-02
1. fopen FILE * fopen(const char * path,const char * mode); 函數說明 參數path字串包含欲開啟的檔案路徑及檔案名稱,參數mode字串則代表著流形態。 mode有下列幾種形態字串: r 開啟唯讀檔案,該檔案必須存在。 r+ 開啟可讀寫的檔案,該檔案必須存在。 rb+ 讀寫開啟一個二進位檔案,只允許讀寫資料。 rt+ 讀寫開啟一個文字檔,允許讀和寫。
Time of Update: 2018-08-02
Singleton模式是最常用的設計之一,最近結合自己的實際應用,把Singleton作為模板抽象出來(安全執行緒),權當拋磚引用,歡迎大家提出批評意見,互相交流。下面為源碼,已經編譯運行過。 Singleton 模板類 #ifndef _Singleton_h_#define _Singleton_h_#include <pthread.h>class
Time of Update: 2018-08-02
我們知道,在同一類中是不能定義兩個名字相同、參數個數和類型都相同的函數的,否則就是“重複定義”。但是在類的繼承階層中,在不同的層次中可以出現名字相同、參數個數和類型都相同而功能不同的函數。例如在例12.1(具體代碼請查看: C++多態性的一個典型例子 )程式中,在Circle類中定義了
Time of Update: 2018-08-02
本文根據上一篇TQ2440開發板學習紀實(1)—最簡單的獨立運行組譯工具進化而來。 0 ARM堆棧(Stack)基礎知識 ARM支援滿減類型的堆棧,滿的意思是說堆棧指標SP(即R13)總是指向剛剛入棧的資料單元。與滿相對應的就是不滿,這種類型的棧指標SP指向棧頂的下一個空白單元。減的意思是說,棧底的記憶體位址大,棧頂地址小,壓入資料時,棧向地址小的方向擴充。 目前我們只有4KB的記憶體可用,範圍為:0x00000000-0x00000FFF,如下圖:
Time of Update: 2018-08-02
2012年北航機試: T3:統計關鍵字 輸入一行標準c語言代碼(字元個數小於300),統計出該字串中關鍵字的if,while,for所在的位置,按照關鍵字出現的順序依次輸出。注意雙引號內的不需要統計。 輸入:一行標準c語言代碼,字元個數小於300 輸出:關鍵字if,while,for對應的位置,按照關鍵字出現的順序依次輸出。輸出格式為:關鍵字,後跟冒號,然後是出現的位置。掃描到關鍵字就輸出,每個輸出佔一行。 範例輸入: #include
Time of Update: 2018-08-02
首先要明白,同類的層級是可以通過z-index來控制;但非同類之間的層級的關係: c++控制項>div; 但是在使用過程中,如何合理控制各個之間的關係呢。
Time of Update: 2018-08-02
本文樣本下載 1.C#與Lua的互動請參考我以前的文章Lua結合C#調用C++或者C的函數 2.在C#中,如何將一片程式碼片段放在主線程執行呢。對於Winform程式: public void ExecuteMethodInMainThread() { if (this.InvokeRequired) { this.Invoke(new
Time of Update: 2018-08-02
小菜最近複習資料結構~~~ 很簡單的東西還是要敲阿 就這樣 po代碼 #include <stdio.h>#include <stdlib.h>#include <math.h>#define Stack_Init_Size 20#define Stack_Increasement 10typedef char Elemtype;typedef struct{ Elemtype *base;
Time of Update: 2018-08-02
先給出代碼: #include<iostream>using namespace std;class A{public: A(int x1) { x=x1; } void show() { cout<<"x="<<x<<endl; }private: int x;};class B:private A{public: B(int x1,int
Time of Update: 2018-08-02
平時,我們將c#中的Distinct大多用於對數組去重,一般數組為基礎的資料類型,例如 int,string.也可以用於對象去重,我們看看C#對Distinct方法的定義: 有重載,第一個參數都加了this,是拓展方法,有關拓展方法,請百度瞭解。 下面我們來研究下Distinct的對象去重,假設我們現在有一個People類: public class People { public int ID { get; set; } ///
Time of Update: 2018-08-02
C#的提交表單方式主要有兩種WebClient與HttpWebRequest,這裡先介紹一種 WebClient,轉送門:http://msdn.microsoft.com/zh-cn/library/system.net.webclient(v=VS.80).aspx string postString =
Time of Update: 2018-08-02
1.當傳遞較大的資料結構作為參數時,用引用或者指標作為函數參數可以節省 一個複製的過程,提高效率。 看別人代碼經常這樣使用。想想為啥 void Fun1(const classA&);void Fun2(const classA*);如果ClassA是大型的資料結構或者類,不使用&或者* 傳遞參數就會把實參賦值給一個臨時的形參,將會浪費一些效能,使用指標或者引用傳遞將傳遞的是本身,提高了效率。 至於 const 嘛,不想改變其值。所以盡量這樣使用還是有好處的。