Time of Update: 2018-12-05
好久沒看C++的基礎性的知識了,很多東西都忘了。今天在其它地方看到關於C++類protected的地方不太記得。翻了一下《C++ Primer 4th》,發現迷惑的地方更多了,真的是能力渣渣的啊,基礎真的不行。------------------分割線---------------------類設計與受保護的成員如果沒有繼承,類只有兩種使用者:類本身的成員和該類的使用者。將類劃分為private 和 public
Time of Update: 2018-12-05
以前看到一個http://topic.csdn.net/u/20120417/15/edbf86f8-cfec-45c3-93e1-67bd555c684a.html網頁,覺得蠻有趣的,方法似乎很簡單,早就想用c++實現它,但是擱置很久,今天突然感興趣實現了下。給一個免費的下載java原始碼地址:http://download.csdn.net/detail/yjflinchong/4239243,圖片你可以用他們的圖片~~
Time of Update: 2018-12-05
pair<T1,T2>P1;pair<T1,T2>p1(v1,v2);//v1為T1類型,v2為T2類型make_pair(v1,v2);//返回一個pair對象p.first;p.second;關聯容器不能通過容器大小定義,不能用resize。map<k,v>m(m2);map<k,v>m;map<k,v>m(b,e); //b,e為map迭代器。鍵必須支援<。map<k,v>::value_type為pair類型
Time of Update: 2018-12-05
書名適合讀者特點《C++ Primer》 已經有了一些C背景,或者C++有了一些瞭解,因為興趣,打算下定決心學好它的人們次書乃是C++界“倚天屠龍”中的“屠龍刀”細緻入微,可以當工具書用,文法詳盡,告訴你常用的C++文法和函數及其使用方式,適當的用小例子加以說明,全書結構設定合理,條理分明,由於適合入門,所以不難,只是內容較多,容易讓那些想投機取巧的人望而卻步。《C++沉思錄》如果你已經寫過一個中等程式,如2000行左右,對如何重構,對速度有更高的要求,對變更程式要求更高,那麼本書是你不錯
Time of Update: 2018-12-05
//本文演算法思想是對C++注釋的分類討論// (1) a/b// (2) //a // (3) /*a*/// (4) a*b//由上述四種情況可以看出在源碼中第一次遇到'/'時須分(1),(2),(3)三種情況來討論,其他均直接輸出字元即可。//一旦第一次發現'/'則繼續讀入並處理,只需再讀入一個字元即可分辨(1),(2)和(3).他們分別是//'b'一般字元(說明剛才讀入的'/'不是注釋,應連同剛才的'/'一起輸出);//
Time of Update: 2018-12-05
早前看到過一句話 "Visual Studio 2010的介面是使用WPF開發的“後來又看到”C語言的編譯器,通常使用C語言或C++語言開發“咋看上去,有點”自己生自己“的意思 和”雞生蛋,蛋生雞“的迷惑。WPF本身就是Visual Studio 中提供的一種開發項目模板,怎麼Visual Studio 的介面是用它開發的?是現有的Visual Studio
Time of Update: 2018-12-05
這題比賽的時候是狐狸大大敲的..先用了list..結果逾時了..果斷樹狀數組A之...其實這題當年做過很類似的: POJ2828 插隊排隊問題.. 初始所有點的值都是1..那麼初始時每個點k的1~k之和a[k]就是當前數(當然做了取出操作後就不一樣了...)...要取出當前第k大時..用二分夾逼找到a[h]=k的h..再將h位更新為-1.並更新樹狀數組..那麼就相當於將>=h的每個點的a[ ] 都-1了...
Time of Update: 2018-12-05
聯合(union)在C/C++裡面見得並不多,但是在一些對記憶體要求特別嚴格的地方,聯合又是頻繁出現,那麼究竟什麼是聯合、怎麼去用、有什麼需要注意的地方呢?就這些問題,我試著做一些簡單的回答,裡面肯定還有不當的地方,歡迎指出!1、什麼是聯合?“聯合”是一種特殊的類,也是一種構造類型的資料結構。在一個“聯合”內可以定義多種不同的資料類型, 一個被說明為該“聯合”類型的變數中,允許裝入該“聯合”所定義的任何一種資料,這些資料共用同一段記憶體,已達到節省空間的目的(還有一個節省空間的類型:位域)。
Time of Update: 2018-12-05
/*------------------------------------------------------程式說明: 程式接收一個二進位字串,然後程式將其轉換成十進投師數字值表示 程式最多可以接收32位。-------------------------------------------------------*/#include<stdio.h>#include<string.h>#define MAXBIT 33long btoi(char
Time of Update: 2018-12-05
(三)視窗子控制項 #include<windows.h>#include"resource.h"HINSTANCE hInst;TCHARszBuffer[128];HBITMAPhBmp1 = 0, hBmp2 = 0, hTemp = 0;static intiScrPos = 2;BOOL CALLBACK DlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam){switch(uMsg){case
Time of Update: 2018-12-05
採用的編譯環境為VC++6.0 (一)第一個視窗函數FirstWindow.c#include <windows.h>LRESULT CALLBACK ProcWinMain(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam){PAINTSTRUCT stPs;RECTstRect;HDChDc;switch(uMsg){case WM_PAINT:hDc = BeginPaint(hWnd,
Time of Update: 2018-12-05
(一)菜單和加速鍵 #include<windows.h>#include"Resource.h"TCHARszBuffer[128];TCHARszClassName[] = TEXT("Menu Example");TCHARszCaptionMain[] = TEXT("Menu");TCHAR szCaption[] = TEXT("菜單選擇");TCHARszMenuHelp[] = TEXT("說明主題(&H)");TCHARszMenuAbout[] =
Time of Update: 2018-12-05
(二)表徵圖和游標#include<windows.h>#include"Resource.h"TCHARszName[] = TEXT("Icon and Cursor Example");HICONhIconBig, hIconSmall;HCURSOR hCur1, hCur2;HMENUhMenu;HINSTANCEhInst;LRESULT CALLBACK ProcWinMain(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM
Time of Update: 2018-12-05
在C++Builder, 可以通過CB的擴充文法__property()來實現對象的Property。但這個方法必需有編譯器的支援,脫離了CB的編譯環境就無法使用。同樣的,在VC6.0以上的版本中,也實現了__declspec(property)這樣一個文法來實現property.它除了跟CB 中的perperty一樣,在跨平台方面有局限性以外,而且他不支援多態。 下面的例子可以說明: class M { private: int v; virtual int Get()
Time of Update: 2018-12-05
namespace std{template<class T>void swap(T&a,T&b){T temp(a);a=b;b=temp;}}//T支援copying函數即可。//pimpl手法:以指標指向一個對象,內含真正資料。//在namespace std中只能全特化,不能偏特化,//如namspace std{template<> void swap<A>(A&a,A&b){.....}} 介面:使用者和代碼的互動。
Time of Update: 2018-12-05
操作Cookie公用代碼 #region關於操作Cookie的方法 ///<summary> ///創建cookie值 ///</summary> ///<param name="cookieName">cookie名稱</param> ///<param name="cookieValue">cookie值</param>
Time of Update: 2018-12-05
下面是零零散散做的一些筆記。1、為什麼說雙向關聯往往是設計的壞味道?從可複用性的角度來看,如果兩個類間的關係是雙向的,則每個類都需要知道對方,因此兩者都不能複用。說明單向關聯有助於標識可複用的類。 2、彙總組合方式會遇到對象生命期管理的問題,怎麼解決?例如,A_Create(B_Create()->IA,
Time of Update: 2018-12-05
一些同學問我,如何學好C++,我沒有別的辦法給你們,唯一的辦法就是讀書,讀大量的書,就可以解決。要把C++作為日常語言,而不是一種程式語言,這樣就好辦了。有人又要問我,那麼我應該讀什麼書才好?沒有時間怎麼辦?我只能對你們說,沒時間的話,就別學C++了,做你們喜歡做的事。生活中沒有C++,也同樣美好。如果你準備學,一定要學好,那麼我開個書單,應該問題不是甚大。首先肯定要讀一讀Bjarne Stroustrup的The Design and Evolution of C++,瞭解一下這個語言的曆史。
Time of Update: 2018-12-05
最近一個同學在看c++編程思想中文版,看到內嵌函式這一章節,有這樣一句話: 1)語言定義規定非內嵌函式直到類聲明結束才賦值。 同學很不能理解意思,於是問了下我。於是我看了一下上下文: 這是c++編程思想8.3.2的原文:8.3.2 賦值順序假如我們想象編譯器對執行內聯做了些什麼時,我們可能糊裡糊塗地認為存在著比事實上更多的限制。特別是,假如一個內嵌函式對於一個還沒有在類裡聲明的函數進行向前引用,編譯器就可能不能處理它。 執行個體代碼:class forward { int i;public:
Time of Update: 2018-12-05
C#自訂事件和java有所不同,涉及到委託。下面程式碼封裝括自訂事件從事件定義到事件觸發和執行的全過程。using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Timers;//using System.Timers;namespace EventTest{ //定義一個委託MessageHandler,可以看作是一個類。 public