Time of Update: 2018-12-04
4.2指標的引入*符號把一個標識符聲明為指標:vector<int> *pvec; pvec是一個執行vector<int>類型對象的指標int *ip1,*ip2; ip1和ip2分別是指向int類型對象的指標 一個有效指標必然是以下三種狀態:1.儲存一個特定對象的地址;2.只想某個對象後面的一個對象;3. 0值注意:避免使用未初始化的指標,懸null 指標,dangerous!!簡單的指標操作:#include
Time of Update: 2018-12-04
在一根柱子上從下往上按照大小順序摞著64片黃金圓盤,求把圓盤從下面開始按大小順序重新擺放在另一根柱子上需要移動多少次。並且規定,在小圓盤上不能放大圓盤,在三根柱子之間一次只能移動一個圓盤。解答:我們可以拿n=3的時候舉例子:易知f(1)=1,f(2)=3,f(3)=7……;當n=2時候(1,2,3分別表示小中大三塊盤子):當n=3時候:n=3的前三步就是重複n=2時候,把小的兩塊移動到另一個一個柱子。然後就是將3移動到另一塊柱子上,在繼續重複n=2把小的兩塊移動到另一個(指存在3的一個)柱子上。
Time of Update: 2018-12-04
條款17:重載運算子時應當符合C/C++約定更多條款請前往原文出處:http://blog.csdn.net/liuchang5假設我們用了第三方的stack模版類,他的pop函數形如下面這個樣子:template<class T> void Stack<T>::Pop( T& result ){ if( vused_ == 0) { throw "pop from empty stack"; } else { result = v_[
Time of Update: 2018-12-04
利用ibjpeg庫進行圖片的壓縮,經常調用jpeg_stdio_dest(&cinfo,fp/*檔案指標*/)函數。由於fp檔案是在調用函數之前就分配好了的足夠大的記憶體來儲存壓縮後的映像,所以經過壓縮後的映像大小(單位為kb)即為fp分配的記憶體大小。因此就會出現分配fp的記憶體越大就越會浪費空間;但如果分配fp的記憶體不夠大,就會造成壓縮崩潰。 libjpeg圖片壓縮,只有在壓縮結束後才知道具體的記憶體大小。所以動態分配記憶體既不會造成空間浪費,也不會造成壓縮崩潰。
Time of Update: 2018-12-04
2條線段的最短距離float DistanceLineToLine( const osg::Vec3d& p1,const osg::Vec3d& p2,const osg::Vec3d& p3,const osg::Vec3d& p4 ){float distance;float x1 = p1.x(); //A點座標(x1,y1,z1)float y1 = p1.y();float z1 = p1.z();float x2 = p2.x();
Time of Update: 2018-12-04
4.3 C風格的字串c++儘管支援c風格的字串,但不該在c++中使用這個類型。c風格的字串常常帶來許多錯誤!#include<cstring>cstring是string.h標頭檔的c++版本c風格的字串是以Null
Time of Update: 2018-12-04
4.4多維陣列多維陣列其實是數組的數組!!多維陣列的初始化:int ia[3][4]={ {0,1,2,3}, {0,1,2,3}, {0,1,2,3}, {0,1,2,3},} int ia[3][4]={ 0,1,2,3} //僅僅初始化第一行的4個元素 int ia[3][4]={ {0},{1},{2},{3}} //僅僅初始化每一行的第一個元素由多維陣列轉換而成的指標類型應是指向第一個內層數組的指標!!陣列變數的名字其實是指標!!int
Time of Update: 2018-12-04
1、cin用法1:最基本,也是最常用的用法,輸入一個數字:#include <iostream>using namespace std;main (){int a,b;cin>>a>>b;cout<<a+b<<endl;}輸入:2[斷行符號]3[斷行符號]輸出:5用法2:接受一個字串,遇“空格”、“TAB”、“斷行符號”都結束#include <iostream>using namespace std;main (){cha
Time of Update: 2018-12-04
屬性的訪問器包含與擷取(讀取或計算)或設定(寫)屬性有關的可執行語句。訪問器聲明可以包含 get 訪問器或 set 訪問器,或者兩者均包含。聲明採用下列形式之一:get {}set {}get 訪問器get 訪問器體與方法體相似。它必須返回屬性類型的值。執行 get 訪問器相當於讀取欄位的值。以下是返回私人欄位 name 的值的 get 訪問器:private string name; // the name fieldpublic string Name // the Name
Time of Update: 2018-12-04
在c++中qsort()排序函數的使用qsort函數應用大全七種qsort排序方法 <本文中排序都是採用的從小到大排序> 一、對int類型數組排序 int num[100]; Sample: int cmp ( const void *a , const void *b ) { return *(int *)a - *(int *)b; } qsort(num,100,sizeof(num[0]),cmp); 二、對char類型數組排序(同int類型) char word[100];
Time of Update: 2018-12-04
一。說明 這裡要講的是在win32平台下怎麼使用vc來調用apache xerces c++介面或者直接把這個項目用到你的項目中去。linux 下的安裝與調用會在下次中給出。 二。 擷取xerces c++ 的軟體包。 · 如果你只想直接調用xerces c++的包而不想自己編譯的話,可以在清單一擷取二進位包 清單一 xerces-c_2_7_0-windows_2000-msvc_60.zip · 如果你想自己編譯xerces c++的包的話,可以在清單二擷取二進位包
Time of Update: 2018-12-04
Apache Xerces-C++是一個非常健壯的XML解析器,是Apache XML 組的核心項目,其前身是IBM的XML4C項目。 提供的兩種解析XML文檔的方法: SAX是一個面向事件的編程API。一個解析引擎消耗XML序列資料,並在發現進來的XML資料的結構時回調應用程式,這些回調稱為事件控制代碼。
Time of Update: 2018-12-04
條款20:安全的覆蓋掉C++默默為我們編寫的函數更多條款請前往原文出處:http://blog.csdn.net/liuchang5我們先試著寫一個最小的類,它的代碼中不包含任何成語函數和實現,因此看上去是這樣的:class Empty{};看上去他空空如也,但其實並非如此。C++編譯器會默默為我們填寫上如下幾個成員函數,用以完成一個簡單類所應具備的“日常”功能。上面的Empty成了如下這般模樣:class Empty{public: Empty(){ ... };
Time of Update: 2018-12-04
前一陣子學習Xerces-C++用於解析指定格式XML文檔。在這裡,把自己的學習經曆和大家分享一下,在這裡僅僅講一些入門的知識,希望對大家有所協助。Xerces-C++是什嗎? Xerces-C++ 的前身是 IBM 的 XML4C 項目。XML4C 和 XML4J 是兩個並列的項目,而 XML4J 是 Xerces-J——Java 實現——的前身。IBM 將這兩個項目的原始碼讓與 Apache 軟體基金會(Apache Software Foundation),他們將其分別改名為
Time of Update: 2018-12-04
【轉】在Symbian OS平台上移植C語言工程的方法原文地址:http://blog.csdn.net/dznlong/archive/2006/02/13/597942.aspx Symbian是應用於高端手機(智能手機)上的一種作業系統,諾基亞、索愛的高端手機便是基於Symbian作業系統的,Symbian OS的優勢在於其高穩定性和節能性,並且有眾多主流手機產商的支援,現在是高端手機上的主流作業系統之一。在Synbian
Time of Update: 2018-12-04
C/C++和Lua的互動 一、C/C++調用Lua注意點1、extern "C"2、luaL_openlibs(L)3、luaL_dofile(L, "test.lua")cpp檔案:#include <stdio.h>//Since the static Lua libraries are written in C, you must import them as such: extern "C"{#include <lua.h>#include
Time of Update: 2018-12-04
/** * */import java.io.*;import java.net.*;/** * @author xinyu126 **/class Node{String username;Socket socket;ObjectOutputStream out;ObjectInputStream in;Node next;public Node(){username=null;socket=null;out=null;in=null;next=null;}}class
Time of Update: 2018-12-04
程式員是很懶的。我們都知道,成員變數要初始化,要不就會出現很蛋疼的問題。但是一個有50個變數的類,去一個個寫初始化式很傻,又不能跟c一樣直接memset(POD可以)。想把初始化這部分自動化,在網上找半天找不到相應的指令碼(如果誰有希望能告訴我沒,謝謝:)),於是只好自己寫了個簡單的,順便分享下:#!/bin/sh#useage#./variables_initializate.sh path_to_your_header_file [op]#op 1,init the variables
Time of Update: 2018-12-04
現在我用我的理解來解釋一下一個helloworld程式的運行過程://---------- helloworld.cpp#include<stdio.h>int main(){printf("hello world!\n");return 0;}從helloworld.cpp到 helloworld.exe經過了以下過程:1,編譯器進行一些預先處理,如處理#include<stdio.h>把 stdio.h的內容放到文本,還有把#define
Time of Update: 2018-12-04
最近在學HTTP協議,發現我可以寫一個程式,類比使用者的註冊啊,發文章之類的程式!! 上網搜了搜,原來這種程式叫網頁註冊機.可以瘋狂地自註冊使用者,也可以瘋狂發廣告貼等,都是用程式直接完成的.其實本質就是模似瀏覽器提交註冊的過程.好,我就去寫吧,我發現這註冊機這玩意最難的就是怎麼破解驗證碼的問題.算了,菜鳥就找個沒有驗證碼的網站吧! 於是我瞄上了我們學校的論壇,看到註冊時是不用驗證碼的,好吧就你了!(後來發現這論壇真讓人蛋疼) .