原创 深入理解虛函數表

參考與http://blog.csdn.net/haoel/article/details/1948051 本人不才,按自己的理解略有修改,歡迎大家一起交流。 對C++ 瞭解的人都應該知道虛函數(Virtual Function)是通

原创 順序容器vector、list、deque的區別

說明:這篇文章主要通過查閱網上資料整理而成,並非原創。 順序容器 三種容器均支持resieze()操作,重新劃定容器大小,且此函數有重載。vector vector和built-in數組類似,是一個在堆上建立的一維數組,它擁有一段連續

原创 union 使用

int main() { struct {    char ch2;    union {         char ch1;         char num;     } bbb;     }aaa; aaa.ch2='a'; a

原创 01揹包

01揹包問題總結  一 問題描述:      有N件物品和一個容量爲V的揹包。第i件物品的費用是c[i],價值是w[i]。求解將哪些物品裝入揹包可使價值總和最大。     所謂01揹包,表示每一個物品只有

原创 sscanf函數與sscanf_s函數

來源http://www.cnblogs.com/kex1n/archive/2011/06/09/2076501.html #include<stdio.h>  定義函數 int sscanf (const char *str,con

原创 scanf、sscanf和sscanf_s

http://blog.csdn.net/shellching/article/details/4958518 在使用VS2005編譯一個程序時,出現了很多警告,說是用的函數是不安全的,應當使用安全版本,即函數名稱增加“_s”的版本。

原创 成員函數裏的虛機制

#include <iostream> using namespace std; class Base { public: virtual ~Base() { cout << "~Base1()\n"; f();

原创 C++虛繼承小結

虛繼承對類的對象佈局的影響 要理解多重繼承情況中重複基類時爲什麼會出現訪問路徑不明確的編譯錯誤,需要了解繼承中類對象在內存中的佈局。在C++繼承中,子類會繼承父類的成員變量,因此在子類對象在內存中會包括來自父類的成員變量。實例代碼如下,輸

原创 各種構造函數的調用

#include<iostream> using std::cout; using std::endl; class Base { protected: int value; public: Base(int i):value(i) {

原创 虛函數面試題

class A  {  public:        void function(){printf("Hello World");}    };    class B  {  public:        virtual void fun

原创 關於對象切片與多態性的認識

#include <iostream> #include <string> using namespace std; class Pet { string pname; public: Pet(const string& nam

原创 fscanf和fgets

函數名: fscanf 功 能: 從一個流中執行格式化輸入,fscanf遇到空格和換行時結束,注意空格時也結束。這與fgets有區別,fgets遇到空格不結束。 用法: 1 int fscanf(FILE*stream,

原创 const和static在類裏的使用規則的簡單示例

class Bunch { //enum { size = 10 };用在早期C++版本,同static const static const int size=10;//不佔類存儲空間 const int num;//佔存儲空間

原创 fatal error C1853 預編譯頭文件來自編譯器的早期版本

http://blog.sina.com.cn/s/blog_69f141290100m0ay.html 當 Visual C++ 項目啓用了預編譯頭 (Precompiled header) 功能時,如果項目中同時混合有 .c 和 .c

原创 sprintf用法解析

http://www.programfan.com/blog/article.asp?id=12763 在將各種類型的數據構造成字符串時,sprintf 的強大功能很少會讓你失望。由於sprintf 跟printf 在用法上幾乎一樣,只是