原创 sockaddr_in結構體簡介

sockaddr_in(在netinet/in.h中定義): struct sockaddr_in { short int sin_family;                      /* Address family */ un

原创 Qt批量創建控件與批量操作控件QPushButton QLineEdit

使用QT編程, 題目1: 假設有這樣的需求:向Widget窗體中添加30個按鈕(QPushButton),如何用代碼實現呢? 有兩種方法,一種是: 添加: for (i = 0; i<30; i++) { QPushButton *b

原创 “內存對界”原理——數據是如何對齊的

1. 內存對界原理 在C語言中,結構是一種複合數據類型,其構成元素既可以是基本數據類型(如int、long、float等)的變量,也可以是一些複合數據類型(如數組、結構、聯合等)的數據單元。在結構中,編譯器爲結構的每個成員按其自然對界(a

原创 C++深拷貝與淺拷貝(實現String類)

淺拷貝: 1.什麼是淺拷貝? 淺拷貝會出現什麼問題? 所謂淺拷貝,指的是在對象複製時,只是對對象中的數據成員進行簡單的複製,默認拷貝構造函數執行的也是淺拷貝。簡單的說,淺拷貝就是值傳遞,將源空間裏面的內容複製到目標空間中。 存在缺陷:多個

原创 NVR+DVR+CVR

一、NVR的簡介   簡單來說:NVR(Network Video Recorder)又叫網絡視頻錄像機,是一類視頻錄像設備,與網絡攝像機或視頻編碼器配套使用,實現對通過網絡傳送過來的數字視頻的記錄。   NVR最主要的功能是通過網絡接收

原创 安防CVR存儲系統設計解決方案

1.1 需求概述 存儲分系統的設計需建立滿足承載應用系統要求的數據存儲能力,根據用戶的網絡和實際應用情況,對視頻監控存儲系統的建設要滿足如下需求: 高性能 由於有多路攝像頭數據併發持續寫入,考慮以後攝像頭的增加,並且同時有多路

原创 C語言下劃線開頭的函數

首先,C++裏關於下劃線的問題是源於C語言,因爲C++允許用extern “C”來修飾代碼以C語言語法方式編譯。然後說C語言裏的下劃線:C語言確實允許以下劃線開頭的函數存在,實際上你用一個下劃線開頭的函數名或者變量是沒問題的,但有可能會發

原创 Cygwin 和MinGW 的區別與聯繫是怎樣的?

    Cygwin,原 Cygnus 出品(已被紅帽收購),目前是 RedHat 名下的項目。項目的目的是提供運行於 Windows 平臺的類 Unix 環境(以 GNU 工具爲代表),爲了達到這個目的,Cygwin 提供了一套抽象層

原创 什麼是句柄?指針和句柄的區別

句柄在windows編程中是一個很重要的概念,在許多地方都扮演着重要的角色。在windows環境中,句柄是用來標識項目的,這些項目包括: (1)模塊(module) (2)任務(task) (3)實例(instance) (4)文件(fi

原创 pcap文件詳解

一.簡介     pcap文件是常用的數據報存儲格式,可以理解爲就是一種文件格式,只不過裏面的數據是按照特定格式存儲的,所以我們想要解析裏面的數據,也必須按照一定的格式。普通的記事本打開pcap文件顯示的是亂碼,用安裝了HEX-Edito

原创 QT:QObject 簡單介紹

QObject 是所有Qt對象的基類。QObject 是Qt模塊的核心。它的最主要特徵是關於對象間無縫通信的機制:信號與槽。使用connect()建立信號到槽的連接,使用disconnect()銷燬連接,使用blockSigna

原创 Scrapy多線程爬蟲原理

一:多線程爬蟲原理 二:Scrapy框架 定義:Scrapy是基於Python實現,方便爬取網站數據、提取結構性數據的應用框架。 底層:使用Twisted異步網絡框架來處理網絡通訊,加快下載速度。             不用手動實現異

原创 蟻羣算法路徑規劃TSP

閱讀目錄 1.關於旅行商(TSP)問題及衍化 2.羣蟻算法基本原理 3.羣蟻算法的基本流程 4.羣蟻算法計算實例 5.TSP問題的羣蟻算法C#代碼實現 6.資源與參考文獻   若干年前讀研的時候,學院有一個教授,專門做羣蟻算法的,很厲害,

原创 linux系統下Matlab 讀json數據

linux系統下Matlab 讀json數據可分爲兩步: 1.首先json文件轉爲結構體數據類型 2.matlab讀入結構體數據 網址:https://github.com/fangq/jsonlab 下載:loadjson.m  mer

原创 Linux export輸出變量

在Linux中,設置環境變量有許多方法,其中最直接的就是使用export命令來對已有的環境變量添加新的值,比如我們安裝了Java,現在要將其路徑加入PATH環境變量中,可以使用: 選擇profile文件寫入我們的環境變量;使用 suodo