Time of Update: 2018-12-04
//SPtr.h#ifndef S_PTR_H#define S_PTR_Htemplate <typename T0, typename T1 = unsigned int> class SPtr{ template <typename T0, typename T1> friend class SPtr;public: SPtr(T0 * ptr = 0) :ptr_(ptr), use_(new T1(1)) {} SPtr(const SPtr &
Time of Update: 2018-12-04
C++的文法過於精巧,以致很多同學不能很好地理解。本文舉幾個小例子,供讀者思考。1、 inline和virtual#include <iostream>class A{public: virtual inline void func() { std::cout << "A::func" << std::endl; }};class B:public A{public: virtual inline void
Time of Update: 2018-12-04
標籤:經典 C語言 編程 垃圾 絕對能夠測試你的C語言功力的幾個問題 答案 垃圾題目 絕對能夠測試你的C語言功力的幾個問題http://www.bccn.net/Article/kfyy/cyy/jszl/200607/4181.html 解答: 垃圾題目,這種題也被作為經典?垃圾垃圾 1、strlen(str)錯誤操作,可能導致程式崩潰sizeof(str)值為102、strcpy
Time of Update: 2018-12-04
#include <stdio.h>int main(void){ FILE * file = popen("ls", "r"); int i; for(i=0; ;++i) { char buffer[1024+4]; fgets(buffer, 1024, file); if(feof(file)) break; printf("%s", buffer); } printf("%d\n", i); pclose(file); return
Time of Update: 2018-12-04
函數模板應用樣本//test.htemplate <typename M,typename N>M add(M a,N b){ return a+b;}//test.cpp#include <iostream>#include "test.h"using namespace std;void main(){ int a=15; float d=-2.8f; double b=12.5; char
Time of Update: 2018-12-04
去年參加ACM大賽遇見這個題,不知道怎樣解決,今天終於解決,原來這麼簡單,只需要用__int64 #include <iostream>using std::cout;using std::endl;int main(){ __int64 sum=0,multiply=1; for (int i=1;i!=50;++i) { multiply*=2; sum+=multiply; } cout<<sum<<endl; return
Time of Update: 2018-12-04
c++中函數的傳回值也可以是指標類型,但是這個指標類型必須是非函數內部的局部的地址,或者是NULL。如:int* SwpInt(int *a,int *b){ int c; c=*a; *a=*b; *b=c; return a;}這個函數返回的指標是安全的,因為a不是函數內的某個局部變數的地址。char *point(){ char pt2; pt2="B"; return
Time of Update: 2018-12-04
相信步驟大家都知道,下面上成果 代碼如下,英文系統沒有中文IME,而且打中文居然是亂碼,不知道咋整,只能用英文注釋了 /*the key ideal is to call the function "mlfMrank" which is created by matlab complier,and i used the command "mcc -B csharedlib:test mrank.m" to generate the c share libaraywhich
Time of Update: 2018-12-04
c++中允許函數的嵌套調用,但不允許函數的嵌套定義,例如:#include<iostream.h>int SwpInt(int *a,int *b){ int c; c=*a; *a=*b; *b=c; return a;}void main(){ int e=12; int
Time of Update: 2018-12-04
explicit用來防止由建構函式定義的隱式轉換。要明白它的作用,首先要瞭解隱式轉換:可以用單個實參來調用的建構函式定義了從形參類型到該類類型的一個隱式轉換。例如:class things{ public: things(const std::string &name = ""): m_name(name),height(0),weight(10){} int CompareTo(const things &
Time of Update: 2018-12-04
c語言標頭檔及其函數2007-08-14 13:29出處:http://hi.baidu.com/insp/blog/item/5a91843952f2fef13b87ce5c.html標頭檔 ctype.h 函數列表<>函數類別 函數用途 詳細說明字元測試 是否字母和數字 isalnum是否字母 isalpha是否控制字元 iscntrl是否數字 isdigit是否可顯示字元(除空格外) isgraph是否可顯示字元(包括空格)
Time of Update: 2018-12-04
下面以一個例子簡單的說下c++程式計時的方法#include <iostream>#include <ctime>using namespace std;void main( ){ clock_t start,finish; start=clock(); int one; int& rone=one; one=5; cout<<"one:"<<one<<endl; cout<<"rone:"<<rone&
Time of Update: 2018-12-04
問題描述:參加任何一項比賽,都會涉及到排名統計問題,由此可見排名統計是多麼的重要.這裡假設有一項比賽,共有n(1<=n<=200)個人蔘加,那麼請問共有多少種不同的排名(注意:可以很多參賽者在同一個名次,即參賽者名次可以並列)? 資料輸入n,輸出為不同的排名總數.如輸入1 2 3輸出為1 3 13//程式的效能還不行,演算法基本沒問題了==================code================/***Copyright (C) aprin at Xiamen
Time of Update: 2018-12-04
先看一個例子 #include<iostream> using namespace std;class a {}; class b{}; class e{public: void func1(); virtual void func2();private: static int n; int m;};class c:public a{ virtual void fun()=0; }; class d:public b,public c{}; int
Time of Update: 2018-12-04
在C語言中,指標和數組名通常都可以混用。例如char *p;訪問時,*p跟p[0]是一樣的,*(p+1)跟p[1]是一樣的。對於數組char b[5];訪問時,b[0]跟*b是一樣的,b[2]跟*(b+2)是一樣的。在一般的通訊中(例如串口),通常都使用位元組傳輸。而像float,long int之類的,有4位元組。我的方法就是取它的地址,強制轉換為char型指標,然後當作數組來用。float
Time of Update: 2018-12-04
1、介面作為類型而存在 介面是類型(class)一般行為的定義和契約。作用主要有:定義多個類型都需要的公用方法和屬性;作為一種不可執行個體化的類型存在。實現了介面的類或結構必須實現介面定義的每一個屬性和方法,這些方法在設計或功能上往往是相關的。 2、介面和抽象類別:相同之處:兩者都不能產生執行個體對象,都可以作為一種契約和定義被使用;不同:介面沒有實現部分,但抽象類別可以包含部分實現代碼;介面沒有欄位,但抽象類別可以包含欄位;介面可以被結構(struct)繼承,但抽象類別不行;抽象類別有建構函式
Time of Update: 2018-12-04
舍友那裡一本《C++程式設計語言》在那裡躺了好久。我一日突然間想拿來翻翻,沒想到一發不可收拾。對於C++語言的每個特性,作者不僅給出了如何用,還說明了設計這個特性的理由,以及在什麼情況下如何安全地使用這個特性,真是暢快淋漓。翻著翻著,頓感自己的C++語言功力仍是如此粗淺,好多概念根本是一知半解,真乃羞愧羞愧。幸而遇此書,使我不致感覺太良好。一些很長時間不甚了了的問題在此都一一得到解決,此書的廣度深度真是可見一斑。更重要的是它不僅是僅僅是一本語言方面的書籍,更是一本教你如何實踐的書籍。記住Bjar
Time of Update: 2018-12-04
原型:extern char *strtok(char *s, char *delim); 用法:#include <string.h> 功能:分解字串為一組標記串。s為要分解的字串,delim為分隔字元字串。 說明:首次調用時,s必須指向要分解的字串,隨後調用要把s設成NULL。 strtok在s中尋找包含在delim中的字元並用NULL('/0')來替換,直到找遍整個字串。
Time of Update: 2018-12-04
實驗室的一個項目需要調用matlab程式。經過再三考慮,決定使用vc調用matlab匯出庫的形式。而我主要負責與matlab程式結合的工作。以下是今天工作的簡要總結。全當是個備忘吧。1:在matlab中選擇compiler。 在命令列視窗輸入:mex -setup 按照提示選擇vc6.0.由於使用的是matlab7,不識別vs2010和2008,無奈有裝的vc6.0。但聽說最新版的matlab可以識別。2:選擇builder. 輸入:mbuilder -setup
Time of Update: 2018-12-04
轉自:http://badboywang.iteye.com/blog/4463501. plain new 普通newvoid*operator new(std::size_t)throw(std::bad_alloc); void operator delete( void *) throw(); 該運算子在分配失敗時將拋出異常,而非返回NULL。使用時要包含 <new>標頭檔。正常使用new,但要配以異常處理。如:char *getMemory(unsigned long