随笔分类 - C/C++
摘要:MFC中可以通过以下步骤实现只运行一个实例: 定义一个唯一的标识符,在应用程序的头文件中声明: #define SINGLE_INSTANCE_GUID "{12345678-1234-5678-9012-345678901234}" 在InitInstance()函数中,创建一个互斥体并检查互斥体
阅读全文
摘要:以下是 C 语言实现 HTTP 文件下载的断点续传示例代码。假设要下载的文件 URL 为 http://example.com/example.zip,本地保存为 example.zip。 #include <stdio.h> #include <stdlib.h> #include <curl/c
阅读全文
摘要:#include <iostream> #include <fstream> #include <boost/asio.hpp> using boost::asio::ip::tcp; int main() { try { boost::asio::io_service io_service; //
阅读全文
摘要:只两天在做C++的开发,需要一个时间的字符串,星期为中文,精确到毫秒。网上查了一些资料总结如下: #include <windows.h> string getTimeNow() { SYSTEMTIME sys; GetLocalTime(&sys); char nowTime[40]; char
阅读全文
摘要:很多时候,柔性数组应用在了变长结构体中,如: StructPacket { Int state; Int len; Char cData[0]; //这里的0长结构体就为变长结构体提供了非常好的支持 }; 首先对0长数组做一个解释: 用途 :长度为0的数组的主要用途是为了满足需要变长度的结构体。 用
阅读全文
摘要:三种方式实现vector的自定义排序 方法1:重载运算符 #include <vector> #include <algorithm> #include <functional> using namespace std; struct TItem { int m_i32Type; int m_i32
阅读全文
摘要:函数功能:该函数返回指定窗口的边框矩形的尺寸。该尺寸以相对于屏幕坐标左上角的屏幕坐标给出。 BOOL GetWindowRect(HWND hWnd,LPRECTlpRect); 参数: hWnd:窗口句柄。 lpRect:指向一个RECT结构的指针,该结构接收窗口的左上角和右下角的屏幕坐标。 返回
阅读全文
摘要:#include<iostream>//c++中标准的输入和输出流 using namespace std;//std是标准的statard的缩写 #include<vector>//引用vector容器必须要包含vector的头文件 #include<algorithm>//for_each算法必
阅读全文
摘要:一.__VA_ARGS__简介 VA_ARGS 是一个可变参数的宏,是新的 C99 规范中新增的,目前似乎只有 gcc 支持( VC 从 VC2005 开始支持)。 VA_ARGS需要配合 define 使用,总体来说就是将左边宏中 .. 的内容原样抄写在右边 VA_ARGS 所在的位置; 举个例子
阅读全文
摘要:对“智能指针”理解: 所谓“智能指针”,并不是强调“智能”,其实质是帮助C++农民工 T_T 更好、更方便、更安全地管理动态内存,防止内存泄漏问题的出现。智能指针的工作原理就是将代码中申请的动态内存交给智能指针对象进行管理,智能指针对象在其生命周期结束(析构)时,将自己管理的动态内存释放掉,而不需要
阅读全文
摘要:一、命令模式的概念 命令模式是一种数据驱动的设计模式,属于行为型模式;请求以命令的形式包裹在对象中,并传递给调用对象;调用对象寻找可以处理该命令的合适对象,并把该命令传给相应的对象,该对象执行命令。 二、命令模式使用场景 1、命令模式是将一个请求封装为一个对象,从而可用不同的请求对客户端进行参数化、
阅读全文
摘要:给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: rowIndex = 3 输出: [1,3,3,1] 示例 2: 输入: rowIndex = 0 输出: [1] 示例 3: 输入: rowI
阅读全文
摘要:给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: numRows = 5 输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]] 示例 2: 输入: numRow
阅读全文
摘要:给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: true 解释:"amanaplanacanalpanama" 是回文串
阅读全文
摘要:编写代码,移除未排序链表中的重复节点。保留最开始出现的节点。 示例1: 输入:[1, 2, 3, 3, 2, 1] 输出:[1, 2, 3] 示例2: 输入:[1, 1, 1, 1, 2] 输出:[1, 2] 因为会保留一个重复结点,所以在遍历链表的时候,我们就要判断这个节点是不是一个重复结点,这个
阅读全文