随笔分类 - C++技术
摘要:在对vector中的元素进行遍历删除时遇到了一点问题,查博客发现博客上并不靠谱。在此记录,共同进步。vector循环遍历正确代码: for(vector<int>::iterator it=vec.begin(); it!=vec.end();){ if(*it == 3){ vec.erase(i
阅读全文
摘要:使用标准库函数: htons():将16位整数从主机字节序转换为网络字节序。 htonl():将32位整数从主机字节序转换为网络字节序。 ntohs():将16位整数从网络字节序转换为主机字节序。 ntohl():将32位整数从网络字节序转换为主机字节序。 例子: #include <iostrea
阅读全文
摘要:#include <iostream> #include <Windows.h> #include <WinSock2.h> std::string GetLastErrorMessage() { DWORD errorCode = WSAGetLastError(); LPSTR errorMes
阅读全文
摘要:在 C++ 中,可以使用 <arpa/inet.h> 头文件中的 inet_ntoa 函数将 ULONG 类型的 IP 地址转换为字符串。该函数将二进制格式的 IP 地址转换为点分十进制格式的字符串。 以下是一个示例程序,演示如何使用 inet_ntoa 函数将 ULONG 类型的 IP 地址转换为
阅读全文
摘要:在 C++11 中,可以使用 <chrono> 头文件中的 std::chrono::system_clock 类来获取当前时间戳。它提供了多种精度和分辨率的时钟类型,其中最常用的是系统时钟。 以下是一个示例程序,演示如何使用 std::chrono::system_clock 类获取当前毫秒数:
阅读全文
摘要:在C++中,map插入相同的键值时会覆盖旧的键值。当使用operator[]或insert()函数向map中添加一个键值对时,如果该键已经存在于映射中,则新值将覆盖旧值。 注意[]会覆盖旧值,而insert不会 以下是一个例子: #include <iostream> #include <map>
阅读全文
摘要:std::future 是一个 C++11 引入的标准库类,可用于异步获取计算结果。通常情况下,std::future 可以通过 get() 函数来等待异步操作完成,并获取其结果。 如果需要等待多个异步操作完成并获取它们各自的结果,可以使用 std::future 的姊妹类 std::shared_
阅读全文