第一步: c++入門的書籍看一看,同時將自己有問題的地方隨時記下來,方便上機實現第二步:全面學習階段,C++ Primer ,等一系列知名度很高的書籍.先看中文,後看外文.實驗方法同步驟1第三步:學習C++的資料結構方面的書籍,學一門語言不去用相應的資料結構來打磨,就不知道這門語言能做什麼,不能做什麼.最好是國外的資料結構書籍翻譯過來的,上面有很多中等難度的實驗可以一邊學習演算法,一邊學習C++語言,同時掌握解決問題的思路和方法.第四步:學習STL,比如Effective STL
1 如果你靠評價編譯工具謀生,這樣做當然很好,否則就調入了一個陷阱工具是擷取結果的手段,如果你只注意到手段而忽視了結果,就是在waste time 2 some part of C is essential,這些思想你應該成為習慣,if not ,do it.不要一次又一次的區分指標數組和指向數組的指標的差別,以及指向常量的指標和常量指標的區別.應該一勞永逸的掌握.一部分必須要掌握的,否則你就要經常去查相關資料void call_each(void (**a)(void) ,
自己寫了一段測試程式,比較c++ IO讀和c語言的IO讀的效率: long tickcount = GetTickCount();//取得系統啟動後的時間(miliseconds) int k = 0;cout << "For c API " << endl; for (int i = 0; i < 10000; ++i){FILE* f = fopen("c://temp//test.txt", "rb");if (NULL != f){if
1:C++標準說:An allocation function shall be a class member function or a global function; a program is ill-formed if an allocation function is declared in a namespace scope other than global scope or declared static in global
一些同學問我,如何學好C++,我沒有別的辦法給你們,唯一的辦法就是讀書,讀大量的書,就可以解決。要把C++作為日常語言,而不是一種程式語言,這樣就好辦了。有人又要問我,那麼我應該讀什麼書才好?沒有時間怎麼辦?我只能對你們說,沒時間的話,就別學C++了,做你們喜歡做的事。生活中沒有C++,也同樣美好。如果你準備學,一定要學好,那麼我開個書單,應該問題不是甚大。首先肯定要讀一讀Bjarne Stroustrup的The Design and Evolution of C++,瞭解一下這個語言的曆史。
條款5:小心使用者自訂的轉換函式 c++允許編譯器在兩種資料類型之間進行隱式類型轉換。(implicit conversion).首先,c++繼承了c語言的類型轉換的策略。除了這個,c++還有兩種隱式轉換: 單個參數的建構函式,以及隱式的類型轉換運算子。單個參數的建構函式是指只傳遞給它一個參數就可以調用的建構函式,這種建構函式可能只定義一個參數,也可以定義多個參數,定義多個參數的時候要求第一個參數後面的所有參數都有一個預設值。下面是兩個例子: class name { public:
最早看到POD(plain old data)類型,是在imperfect c++裡。我覺得這是一本把我帶到c++世界裡的一本很重要的書。書裡是這樣解釋POD的: 1、 所有標量類型(基本類型和指標類型)、POD結構類型、POD等位型別、以及這幾種類型的數組、const/volatile修飾的版 本都是POD類型。 2、 POD結構/等位型別:一個彙總體(包括class),它的非static成員都不是pointer to class member、
函數調用棧的實現。可用於實現簡單的指令碼解譯器。聲明:#pragma onceconst int BUFFERSIZE = 1024;const int growfactor = 2; // this stack is used as call stack.class TStack{private:size_t size; // the stack lengthsize_t pos; // the stack top position char *buffer; // the
在看了《C++沉思錄》之後很久,覺得C++之強大!對自己想要的東西才去實現,不需要的放在一邊,天生就是敏捷開發。總是在不斷擴充現有的,而不去改變原來的。下面的多項式加減運算,係數運算總體屬於 多項式的線性運算:multinational.h #pragma once#include <iostream>using namespace std;//multinomial is designed as follow://a(n)*x^e(n)+a(n-1)*x^e(n-1)+...+