Time of Update: 2018-07-25
ExecuteNonQuery方法主要用來更新資料。 通常使用它來執行Update、Insert和Delete語句。 該方法傳回值意義如下: 對於Update、Insert和Delete語句,傳回值為該命令所影響的行數。 對於所有其他類型的語句,傳回值為-1。 Command對象通過ExecuteNonQuery方法更新資料庫的過程非常簡單,需要進行的步驟如下: (1)建立資料庫連接。 (2)建立Command對象,並指定一個SQL
Time of Update: 2018-07-25
LSTM隱層神經元結構: LSTM隱層神經元詳細結構: //讓程式自己學會是否需要進位,從而學會加法#include "iostream"#include "math.h"#include "stdlib.h"#include "time.h"#include "vector"#include "assert.h"using
Time of Update: 2018-07-25
導言 運算式求值 演算法 演算法具體實現 導言 運算式求值是程式設計語言中的一個最基本問題。本次實現採取“算符優先法”。 運算式求值 如何一個運算式都是由運算元、運算子和界限符組成的,我們稱為單詞。一般地,運算元既可以是常數也可以是被說明為變數或常量的標識符;運算子可以分為算術運算子、關係運算子和邏輯運算子3類;基本界限符有左右括弧和運算式結束符等。
Time of Update: 2018-07-25
添加標頭檔#include <wininet.h> 附加庫:#pragma comment(lib,"Wininet.lib") // 發送 int GetURLInternal(LPCSTR lpszUrl, std::string& content){int result = -1;HINTERNET hSession = InternetOpenA(NULL,INTERNET_OPEN_TYPE_DIRECT, NULL,
Time of Update: 2018-07-25
上篇部落格中我們講了返回一個reference對象可能會出錯或者效率特別低,那有沒有比較適合返回reference引用的情況呢。下面我們就來總結一下類型: 1)函數傳回值用引用,參數傳遞進去也用引用: int& hel(int& t){ return t;} 2)函數傳回值用引用,參數傳遞用指標 int& hel(int *t){ return *t;} 3)返回函數內部的資料: copy assignment運算子
Time of Update: 2018-07-25
詳情見:https://zcheng.ren/2016/08/16/STLAllocater/ STL的實現中,空間配置器是重中之重唉,因為整個STL的操作對象放在容器內,怎樣為容器配置空間使得容器得以存放資料呢。這時候我們就需要配置器Alloc進行處理了。 空間配置器Alloc包括哪些方面呢。 空間配置器將記憶體的配置。釋放與對象的構造和析構釋放分開,因此STL的空間配置器包括分兩個部分進行講解: 1、對象的構造和析構
Time of Update: 2018-07-25
條款29:為“異常安全”而努力是值得的 在進行今天“異常安全”討論主題之前,我們先來看看如下代碼: class PrettyMenu{public: ... void changeBackground(std::istream& imgSrc); ...private: Mutex mutex; Image* bgImage; int imageChanges;};void
Time of Update: 2018-07-25
條款31:將檔案間的編譯依存關係降至最低 問題提出:如果我們將某個class的實現檔案做了某些修改,修改並不是class的介面,而是其實現部分,而且只改了其private部分,然後重建整個檔案,然鵝當你進行編譯的時候,可以發現該類都被重新編譯和連結了,什麼鬼。。。 問題的原因是C++並沒有“將介面從實現中分離”該部分做的很好,class的形式不僅包括介面,同時還包括十足的實現項目,如: class Person{public: Person(const std::string&
Time of Update: 2018-07-25
【 聲明:著作權,轉載請標明出處,請勿用於商業用途。 聯絡信箱:libin493073668@sina.com】 9.1 順序容器概述 1.順序容器類型 vector 可變大小數組。支援快速隨機訪問。在尾部之外的位置插入或刪除元素可能很慢。 deque
Time of Update: 2018-07-25
參考《one-day-one-leetcode》 在上篇部落格中我們討論了將1~3999以內的數字轉化為羅馬數字,著重討論了非7個標準的羅馬數位一些表達,例如4,6,3等等的表達,這篇部落格我們著討論一下將羅馬數字轉化為整型數位情況。 其實我們在進行轉化的時候主要注意一下4,40,400,等數位表達即可。 代碼: #include <iostream>#include <string>#include <vector>using
Time of Update: 2018-07-25
本篇博文主要參考:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/22/2603525.html STL(Standard Template Library),是C++的一個高效的標準模板庫,主要包括了: ①容器;②迭代器;③演算法;④仿函數;⑤迭代適配器;⑥空間適配器(allocator)主要包括對象的建立和銷毀以及記憶體的擷取和釋放兩個部分。 - 1、STL容器:
Time of Update: 2018-07-25
setjmp和longjmp是非局部性跳躍陳述式:非局部指的是,這並不類似於普通C語言的goto語句,語句在一個函數內進行跳轉,而是在棧上進行跳轉,可能跳過很多調用幀,然後返回到當前函數調用路徑上的某個函數中去。 使用setjmp和longjmp需要注意的地方: 1)setjmp和longjmp結合使用,有其相應的調用順序,setjmp在前,longjmp在後,以便可以恢複到先前被儲存的“程式執行點”;如果將其順序顛倒將使得程式的執行變得無法預測,非常容易使得程式崩潰退出;
Time of Update: 2018-07-25
在這篇部落格中,我們利用C++編寫了一個構建大頂堆的演算法,其中,在刪除堆元素之後的調整規為自上而下,而建立堆的時候調整演算法為自下而上調整。 我們構建的大頂堆結構為: 刪除掉堆頂元素之後堆的結構為: #include <iostream>#include <string>using namespace std;void swap(int& i, int& j){ int temp; temp = i; i = j;
Time of Update: 2018-07-25
用函數access,標頭檔是io.h,原型: int access(const char *filename, int amode); amode參數為0時表示檢查檔案的存在性,如果檔案存在,返回0,不存在,返回-1。 這個函數還可以檢查其它檔案屬性: 06
Time of Update: 2018-07-25
結構體類型變數的定義與其它類型的變數的定義是一樣的,但由於結構體類型需要針對問題事先自行定義,所以結構體類型變數的定義形式就增加了靈活性,共計有三種形式,分別介紹如下: 1) 先定義結構體類型,再定義結構體類型變數: struct stu / *定義學生結構體類型* / { char name[20]; / * 學生姓名* / char sex; / * 性別* /
Time of Update: 2018-07-25
在c++中new有三種用法:執行個體化一個對象;執行個體化一個數組;定位new運算式。那麼今天我來說下第三種用法。 【什麼是定位new運算式】: 就是在記憶體中new一塊地址,然後將大小合適的執行個體化對象放入該地址中的操作方法 【什麼性質:】 就是在已申請的記憶體空間中調用建構函式 【怎麼使用定位new運算式】: 1)格式:new (place_address)
Time of Update: 2018-07-25
詳情見:https://zcheng.ren/2016/08/23/STLVector/ C++中由於數組不能動態拓展,因此在STL中設定了vector用來實現動態數組的作用,通過分配連續的記憶體空間存放元素,如果在插入元素的時候發現記憶體空間不夠大的話,可以對其重新進行記憶體配置,實現動態數組。 vector的結構包括3部分:標記記憶體空間起點的起始迭代器:iterator start;標記當前元素插入位置的迭代器:iterator
Time of Update: 2018-07-25
廣泛言論:加括弧調用沒有參數的建構函式,不加括弧調用預設建構函式或唯一的建構函式。 如果該類沒有定義建構函式(由編譯器合成預設建構函式)也沒有虛函數,那麼class c = new class;將不調用合成的預設建構函式,(為什麼不調用。)而class c = new class();則會調用預設建構函式。 (編譯器合成的預設建構函式: 產生:如果使用者定義的類中沒有顯式的定義任何建構函式,編譯器就會自動為該類型產生預設建構函式,稱為合成的建構函式(synthesized
Time of Update: 2018-07-25
寫在前面:最近做的學校項目需要添加登入驗證碼,而我又是一個剛轉專業到電腦的學渣,所以對添加 Web 端驗證碼一竅不通。不過在請教了同學,以及在網上找各種資料,經過自己的測試,算是加了一個簡單的登入驗證碼。下面把添加驗證碼的過程記錄一下,以便以後自己學習改進,也可以讓跟我一樣的小白同學省點找資料的功夫。 1)
Time of Update: 2018-07-25
參考:《one-day-one-code》 問題描述: 實現代碼: #include <iostream>#include <string>#include <vector>#include <algorithm>using namespace std;vector<vector<int>> fourSumCloseOneNumVec1(vector<int> nums, int target){