Time of Update: 2018-12-05
// 同名覆蓋原則.cpp: 主專案檔案。#include "stdafx.h"#include<iostream>#include<string>using namespace std;class One{private:string name;int age;public:virtual ~One( )=0{ }void Get_name( )const{cout<<"Name : "<<name<<endl;}void
Time of Update: 2018-12-05
已經有眾多文章討論 double-checked locking 模式在 Java 下面無法正常工作,這裡先簡要的總結一下。根本原因在於 Java 的 memory model 允許所謂的 out-of-order write ,對於下面的 Java 代碼,out-of-order write 可能導致災難性的結果public static Singleton getInstance(){ if (instance == null) {
Time of Update: 2018-12-05
1)
Time of Update: 2018-12-05
質數又稱素數。指在一個大於1的自然數中,除了1和此整數自身外,沒法被其他自然數整除的數。初級版_Bool Isprimer(unsigned n){ if(n<=1)return false; unsigned i,tem=sqrt(n)+1; for(i=2;i<=tem;i++) /*2也是素數*/ if(n%i==0)return false; return true;} 升級版_Bool Isprimer(unsigned n){ if(n==2)return
Time of Update: 2018-12-05
前段時間因為需要,公司需要寫java和c++的程式,把這個分享給大家,當然網上還有更好的,其實jni就是java到C++的資料類型轉換1.環境export JAVA_HOME=/opt/java/jdk1.6.0_23export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport JRE_HOME=$JAVA_HOME/jre2.:基本操作 1.java類中聲明本地方法, 2.然後調用javah命令產生.h標頭檔
Time of Update: 2018-12-05
1.C語言中沒有引用傳遞,可用傳遞指標方式代替。2.C語言函數不支援預設參數和函數重載。只能定義不同的函數。3.C89中不能隨時隨地定義變數。4.C89中木有bool類型。可以通過int類比。或用enum枚舉類比。或#define false 05.C++中的枚舉類型變數不支援自加,自減運算,用之前要強制轉換為整型後再轉回來。待續。。。
Time of Update: 2018-12-05
編譯器錯誤資訊: CS0016: 未能寫入輸出檔案“c:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET Files/listenleaks/ae3daa38/e9fdb67/0za 方法:產生這些錯誤的原因很多,主要的可能包括:Bin 目錄或者 Web.config 被更改以及訪問檔案系統的許可權不夠。檢查 Bin 目錄的檔案系統存取權限。如果提示說不能訪問
Time of Update: 2018-12-05
定義的標頭檔:class Girl 定義成虛擬基類,這樣將禁止產生基類Girl的對象,同時把建構函式:不帶參數的建構函式Girl( ) 、 帶參 數的建構函式 Girl( string name , int height , int age, int weight ) 放在了protected範圍,進一步強調禁止在Girl類外建立基於 基類的對象,當然顯式的把複製建構函式放在private域,也是有利無弊的。class Beauty_girl : public Girl { };
Time of Update: 2018-12-05
以前VC6,一直以為動態分配一個大小不確定的數組是不行的,現在用vs2003.net發現可以,如:#include <iostream>using namespace std;class stu{public: stu(int aa=1,int bb=2) { a=aa; b=bb; } int a; int b;};int main(){ int a=10; //cin >>a; stu*p = new stu[a]; for(int i=0; i<a; i+
Time of Update: 2018-12-05
習慣了在 JS 中寫 try catch 語句,所以在c++代碼中瞎寫。。杯具。我對c++的瞭解太少了。 1.在C++中,很多錯誤是try{}catch{}捕獲不到的,比如null 指標訪問,野指標訪問等,程式都直接崩潰,不會讓你捕獲的。所以,很遺憾,我慣用try catch,並沒有達到預期。 2. 絕大多數 windows api 在執行時也並不拋出異常,直接掛掉。還是要對每一個問題做其相應的處理,才不至於掛掉。 3. 但可考慮用 GetLastError 擷取錯誤資訊。 4.
Time of Update: 2018-12-05
在看代碼時, 突然有人寫的沒括弧, 也不是說他代碼不好, 而是他們都寫到一種程度, 所以基礎一定不能忘記.原創]如何記住C語言的運算子優先順序?學習C語言也有一段時間了,感覺C語言的運算子優先順序很難記住,特別是對於初學者而言! 也許你會說沒有記住沒關係,用括弧來改變優先順序就可以了。但是很多情況下,因為依賴括弧很容易導致程式可讀性差,當然我不是反對加括弧,只是提倡恰到好處。總之,還是記住好些,讀別人的程式也方便點。近來翻看了一下優先順序,感覺還是有規律可循的,拿來和大家分享,希望對大家有協助!
Time of Update: 2018-12-05
轉自:http://bbs.pediy.com/showthread.php?t=89379 標 題: 【分享】從C語言到彙編,從彙編到C語言作 者: wzjok時 間: 2009-05-20,17:03鏈 接: http://bbs.pediy.com/showthread.php?t=89379要從事“逆向工程”工作,或對其感興趣,請必然要接觸到組合語言。然而我們在對電腦語言的瞭解大都是從進階語言(如C、VB、Dephi)開始的。那當我們閱讀由進階語言翻譯成的機器語言時肯定會遇到很多障礙。
Time of Update: 2018-12-05
僅僅是記錄一下心得; 接觸 C++ 是很久以前的事情,但此後一直很少使用,因此對 C++ 的很多語言特性理解很膚淺; 例如,一直就有點迷惑,“為什麼有了指標,C++ 還要引入引用” ? 網上搜尋一下,一般的答案是 “引用是將引用者作為被引用者的一個別名”; 我試著從編譯器的角度來理解這個“別名”的意思; 一個符號,是一個對象的“正式名稱”;例如 int a; 編譯器把 a 看作一個符號, a 是一個整數對象的“正式名稱”,它對開發人員來說是可見的; 所謂“別名”,就是一個對象的另外一個“
Time of Update: 2018-12-05
預設建構函式如果你定義一個類,並且沒有給它定義建構函式。編譯器會為這個類提供預設的建構函式。如果你提供了建構函式,編譯器是不會再為你提供一個預設建構函式的。編譯器提供的預設建構函式什麼都沒做。類的成員變數將遵守預設的初始化規則。編譯器提供的預設建構函式的初始化規則:在棧和堆中的類對象的內建或複合類型成員變數將為髒資料;在全域變數區的類對象的內建或複合類型成員變數初始化為0;類對象成員將調用預設的建構函式來初始化;#include <iostream>using namespace
Time of Update: 2018-12-05
const對象 如果你想定義一個永遠都不會改變的類對象,可以像下面這樣定義一個const對象const CBox standard(10.0,10.0,10.0);standard對象的成員變數的值將永不會改變。編譯器為了保證const對象不會改變,不允許調用const對象的非const成員函數。即使這個非const成員函數確實沒有改變任何成員變數的值。
Time of Update: 2018-12-05
開篇——環境假設 By : HengStar(欣恒)
Time of Update: 2018-12-05
-o 指定目標檔案名-std=c99 用C99標準編譯-Wall 警告全開-c 只編譯不連結,產生中間檔案-g 產生調試資訊-O0 : 預設不最佳化(若要產生調試資訊,最好不最佳化)-O1 : 簡單最佳化,不進行速度與空間的權衡最佳化; -O2 : 進一步的最佳化,包括了調度。(若要最佳化,該選項最適合,它是GNU發布軟體的預設最佳化層級;-O3 : 雞肋,興許使程式速度更慢;-funroll-loops : 展開迴圈,會使可執行檔增大,而速度是否增加取決於特定環境;-Os :
Time of Update: 2018-12-05
/*這是我第一次寫技術部落格,代碼是從前幾天寫的直接粘貼夠來的。本人剛開始學資料結構,看過一點c++,所以想用類來實現鏈表*//* Date: 19/09/11 23:37 Description: 實現單向鏈表基本的功能 包括:建立,插入,得到元素的值,刪除,銷毀*/#include<iostream>//節點typedef struct Node{ int num; struct Node*pNext;}Node;//用類管理和實現鏈表class
Time of Update: 2018-12-05
還是沒搞懂KMP演算法,不得不說這事個牛逼的演算法。放在這裡,便於以後查看int Index_KMP(const char*str,const char*t){int str_size=strlen(str);int t_size=strlen(t);int *next=new int[t_size];GetNext(t,next,t_size);int i=0,j=0;while (i<str_size &&j <t_size){if (j==-1||str[i]=
Time of Update: 2018-12-05
複製建構函式(copy constructor) C++允許用一個對象初始化另一個對象。完成這個任務的叫複製建構函式。 複製建構函式的調用時機 根據另一同類型的對象顯式或隱式初始化一個對象。(包括賦值初始化和直接初始化) 將一個類對象作為實參傳遞給一個函數。(非參考型別參數。) 從函數返回一個對象。 初始化順序容器中的元素。 根據元素初始化式列表初始化數組元素。