Time of Update: 2018-07-25
關鍵字explicit,可以阻止不應該允許的經過轉換建構函式進行的隱式轉換的發生。聲明為explicit的建構函式不能在隱式轉換中使用。 C++中, 一個參數的建構函式(或者除了第一個參數外其餘參數都有預設值的多參建構函式), 承擔了兩個角色。 1 是個構造器 2 是個預設且隱含的類型轉換操作符。 所以, 有時候在我們寫下如 AAA = XXX, 這樣的代碼, 且恰好XXX的類型正好是AAA單參數構造器的參數類型, 這時候編譯器就自動調用這個構造器,
Time of Update: 2018-07-25
function <new> operator new C++98 C++11 throwing (1) void* operator new (std::size_t size); nothrow (2) void* operator
Time of Update: 2018-07-25
初學C語言,有許多搞不明白的地方。編程,最重要的就是實踐。今天,我偶然間看到書上的練習,做了一個能整齊地輸出n,n的平方,n的立方的小程式。首先,我先用虛擬碼設計程式: 提示使用者輸入表格上限,下限或退出 迴圈:檢測輸入是否正確{ 測試字寬 //為了輸出更好看 按照字寬列印表頭 迴圈:按照字寬輸出資料 提示使用者輸入表格上限,下限或退出 }
Time of Update: 2018-07-25
各種管理類--- 音頻管理 簡介: 音頻管理類多用於音頻較多,類別較多的項目中,往往又主程來寫,便於程式員直接找到想要播放的音頻剪輯,雖然過程稍複雜,但是便於整理和後期添加,如果一個項目在中後期要求添加另外的音效,那麼採用這種管理類只需添加一個枚舉值就可以了,避免很多反覆修改代碼的麻煩。 首先寫一個可以繼承的單例指令碼,兩種寫法,所有的單例類都去繼承它,省去七行代碼,常用於單例指令碼比較多的項目中。
Time of Update: 2018-07-25
bind是一個C++11的一個標準庫函數,它的定義在functional中。可以將bind看作一個通用的函數適配器,他接受一個可調用的對象,產生一個新的可調用對象來‘適應對象參數列表。 調用bind的一般形式為: auto newCallable = bind(callale,arg_list);
Time of Update: 2018-07-25
//常用標準類型轉換模板 #include<iostream> #include<type_traits> using namespace std; int main() {//對於模板參數T//remove_reference將X&& 或 X& 轉換為 X,其他保持不變typename remove_reference<int&&>::type a = 2;cout << a << endl;/
Time of Update: 2018-07-25
std::bitset C++ Utilities library std::bitset
Time of Update: 2018-07-25
一、引用 1.基本引用文法 /*變數引用*/int i = 10;int & s = i;//聲明引用變數s,引用了i,則後續對s或者i變動都會導致s和i的值變動。此時s和i等價//聲明一個引用,不是新定義了一個變數,它只表示該引用名是目標變數名的一個別名,它本身不是一種資料類型,因此引用本身不佔儲存單元,系統也不給引用分配儲存單元。故:對引用求地址,就是對目標變數求地址。&s與&i相等。從而減少記憶體空間和提高運行效率。這就是引用最大的好處。
Time of Update: 2018-07-25
本文主要介紹C/C++編程中兩個巧用異或解決問題的方法。 一、巧用異或進行取反運算 假設安排一個周健身計劃表,每天的可選項目包括:running,riding,swimming。現用一個enum表示周一到周日,如下: enum Day{ Monday = 0x1, Tuesday = 0x2, Wednesday = 0x4, Thursday = 0x8, Friday =
Time of Update: 2018-07-25
視圖矩陣 也稱為攝像機矩陣,它是有三部分組成,即攝像機位置、目標位置以及攝像機上下方向來組成。在DirectX中提供了方法來通過這三部分來形成一個視圖矩陣,這三個參數都為空白間向量(Vector3)。在形成視圖矩陣過程中,如下圖所示,以攝像機位置為起點、攝像機目標位置為終點的單位向量作為攝像機空間的Z’軸座標(相對於世界空間),然後根據左手法則或右手法則計算出攝像機空間的X’軸座標,最後計算出攝像機空間的Y’軸座標。所以視圖矩陣中儲存攝像機空間X’、Y’和Z’軸座標在X、Y和Z方向上的分量,
Time of Update: 2018-07-25
1.如:BaseItem item=sender as BaseItem; as指將sender顯示轉換BaseItem類型 相當於: BaseItem
Time of Update: 2018-07-25
在學習C++基礎知識之後 , 現在學習C#其實簡單很多,但是還是有些不同的,就比如C#中二維數組的定義、聲明 都 是有所不同的。 下面看看有什麼不同: using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Collections;namespace 二維數組{ class
Time of Update: 2018-07-25
C++ :: STL :: algorithm 1.sort(複雜度O(n*log(n))) 排序演算法無疑是用的最多的演算法之一,下面介紹STL中對於sort的用法: 1.1 普通數組排序,從小到大 如: 對 44 21 44 12 7 23 39 9 22 22 38 23 14 26 47 12 排序sort(a,a + n);//這是對[0,n)區間進行排序預設從小到大sort(a + l,a + r);//這是對[l,r)區間進行排序預設從小到大
Time of Update: 2018-07-25
國慶閑來看C++,遇到C語言的一個問題,覺得很有趣。 "C語言中有string類型變數嗎?"這裡的 string 有 二 義性。(1) 如果 string 是普通詞彙,“C語言中有字元類型變數嗎”, 答,有。 字元類型 用 char 聲明。char str[]="This is a string"; (2) 如果 string 是專用詞彙,“C語言中有string類型變數嗎”,答,沒有。string 是 類,是 class,
Time of Update: 2018-07-25
//SHUT DOWN protected void btnShutDown_Click(object sender, EventArgs e) { Process.Start("shutdown.exe", "-s"); // By Default the Shutdown will take place after 30 Seconds //if you
Time of Update: 2018-07-25
一、擷取當前檔案的路徑 string str1=Process.GetCurrentProcess().MainModule.FileName;//可獲得當前執行的exe的檔案名稱。string
Time of Update: 2018-07-25
利用ffmpeg進行映像資料格式的轉換以及圖片的縮放應用中,主要用到了swscale.h檔案中的三個函數,分別是: struct SwsContext *sws_getContext(int srcW, int srcH, enum AVPixelFormat srcFormat, &
Time of Update: 2018-07-25
實現如下: #include <stdio.h>#include <stdlib.h>#define SIZE 20void bubble_sort(int array[], const int size);void swap(int *n1, int *n2);void printArray(int array[], const int size);int main(int argc, char const *argv[]){ int array[SIZE];
Time of Update: 2018-07-25
一、C++中的引用: 引用引入了對象的一個同義字。定義引用的表示方法與定義指標相似,只是用&代替了*。引用(reference)是c++對c語言的重要擴充。引用就是某 一變數(目標)的一個別名,對引用的操作與對變數直接操作完全一樣。其格式為:類型 &引用變數名 = 已定義過的變數名。 引用的特點: ①一個變數可取多個別名。 ②引用必須初始化。 ③引用只能在初始化的時候引用一次 ,不能更改為轉而引用其他變數。 1、基礎引用 #include<stdio.h&
Time of Update: 2018-07-25
實現如下: int getParent(int c);int getLeft(int p);int getRight(int p);void swap(int *p1, int *p2);void heap_sort(int *source, int length);void max_heapify(int *source, int length, int loc);void build_max_heap(int *source, int length);void