C/C++积累
文章平均质量分 82
零点零一
Make it right before you make it faster. Keep it right when you make it faster. Make it clear before you make it faster. Do not sacrifice clarity for small gains in efficiency. -- Brian Kernighan
展开
-
如何在堆和栈上分别创建一个`QObject`子类对象
在Qt中,是许多Qt类和对象的基类,提供了对象模型的核心功能,如信号和槽机制、事件处理等。当一个对象在堆上创建时,意味着这个对象是通过操作符在堆(heap)内存区域分配的,而不是在栈(stack)上自动分配的。这样做有几个原因,包括延长对象的生命周期、在复杂的应用程序中更好地管理对象间的父子关系等。下面是一个简单的例子,展示了如何在Qt中在堆上创建一个对象,并将其设置为另一个对象的子对象。注意:在Qt中,在堆上创建一个对象通常意味着你使用操作符来分配内存,并返回一个指向该对象的指针。这样做的好处是你可以控原创 2024-09-22 17:41:47 · 814 阅读 · 0 评论 -
将几个类型转化为字符串
将几个类型转化为字符串 gcvt是把浮点数转换成字符串,同时返回一个指向字符串的存储位置的指针的函数。详解见:http://baike.baidu.com/view/751647.htm_gcvthttp://technet.microsoft.com/zh-cn/library/aa297932 fcvt函数把一个浮点数转换以空格结尾的字符串char *fcvt(转载 2014-03-20 16:47:05 · 2205 阅读 · 0 评论 -
Creates a pipe for reading and writing的例子程序
/* PIPE.C: This program uses the _pipe function to pass streams of * text to spawned processes. */#include "StdAfx.h" #include #include #include #include #include #include enum PIPES { RE转载 2017-05-12 09:35:12 · 370 阅读 · 0 评论 -
STL String 非常详细 的介绍
STL String非常详细 1 前言: string的角色2 string使用2.1 充分使用string操作符2.2 眼花缭乱的string find函数2.3 string insert, replace, erase3 string和 C风格字符串4 stri转载 2013-08-29 16:17:51 · 874 阅读 · 0 评论 -
C++中public、protected、private的区别和组合结果
C++中public、protected、private的区别C++ protected 访问控制对于外部世界来说,关键字protected和private相似,即在类外部只能通过公有方法访问,而对于该保护成员所在类的派生类,其性质和public相似,可以在派生类中直接访问。第一: private,public,protected的访问范围:private: 只能由该类中的函数、其友元函数访问,不能被任何其他访问,该类的对象也不能访问.protected: 可以被该类中的函数、子..转载 2021-02-23 13:45:35 · 429 阅读 · 0 评论 -
C语言/C++中怎样产生随机数
C语言/C++中怎样产生随机数C语言/C++怎样产生随机数:这里要用到的是rand()函数, srand()函数,C语言/C++里没有自带的random(int number)函数。(1) 如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间。RAND_MAX定义在stdlib.h, 其值为转载 2012-06-05 16:31:40 · 947 阅读 · 0 评论 -
关于C++&Java中命令行编译的问题
关于C++&Java中命令行编译的问题本文讲述有关C++/C和JAVA中命令行编译的有关知识.在实际编程中,有时会碰到main()带参数的情景。记得我第一次在Borlan C++ Builder里面生成一个控制台程序的时候,程序自动生成了一个带参数的main():void main(int argc, char * argv[])当时觉得很奇怪,现在明白了, 通过mai转载 2012-03-22 13:58:58 · 783 阅读 · 0 评论 -
C++ 隐藏和覆盖
C++隐藏 对成员函数的调用依赖与指针覆盖 对成员函数的调用依赖与对象 #include <iostream.h>class Base{public:virtual void f(float x){ cout <<"Base::f(float) " << x << endl; }void g(float x){ cout << "Ba.转载 2018-04-28 16:04:48 · 1430 阅读 · 0 评论 -
WINDOWS API函数说明
Windows API函数大全,从事软件开发的朋友可以参考下1. API之网络函数WNetAddConnection 创建同一个网络资源的永久性连接WNetAddConnection2 创建同一个网络资源的连接WNetAddConnection3 创建同一个网络资源的连接WNetCancelConnection 结束一个网络连接WNetCancelConnection2 结束一个网络连接WNetCloseEnum 结束一次枚举操作WNetConnectionDialog 启动一...转载 2020-10-10 16:25:22 · 1605 阅读 · 0 评论 -
软件为什么如此复杂?
每当我们受命维护或者扩充一个既存系统的时候,恰当地理解原有的系统成为关键。毫无疑问,我们没有足够的时间完全理解它,但是我们一定要找到那个见鬼的合适地方以加入我们的修改。那么是什么阻碍了我们快速理解一个系统呢?一般想来,常见的原因可能包括:缺失必需的文档。没有合适文档是常态;有了文档,版本又是旧的;好不容易找到来的一个当前版本的,但是是以日文写成的(你熟悉日文的情况下,极有可能那是一个英文文档)...转载 2020-01-21 14:14:24 · 906 阅读 · 0 评论 -
Thinking in C++: 第1章 为什么C++会成功
本文内容摘抄自C++经典书籍:《Thinking in C++》操作概念:OOP程序像什么我们已经知道,用C 语言编写的过程程序就是一些数据定义和函数调用。要理解这种程序的含义,程序员必须掌握函数调用和函数实现的本身。这就是过程程序需要中间表示的原因。中间表示容易引起混淆,因为中间表示的表述是原始的,更偏向于计算机,而不偏向于所解决的问题。因为 C++ 向 C 语言增加了许多新概...转载 2020-01-21 14:12:17 · 633 阅读 · 0 评论 -
C++为什么成功?
第一部分不客气地说,CSDN论坛有一股不太好的风气,那就是喜欢空对空。常常就常识性的问题争个不可开交,而真正有价值的帖子却鲜有人问津。这样就很难留住真正有技术积累的且乐于贡献于社区的工程师。而且,由于基本的问题被一遍又一遍地问,总给人一种在低水平徘徊的感觉。道理上讲,还有一种可能是有太多的新人不断加入到C++之中,从而是C++的平均水平被稀释。我情愿是这样。同时,我真心希望,这一代C++工程师...转载 2020-01-21 14:05:57 · 489 阅读 · 0 评论 -
SOAP/XML 关于C/C++ 语言的实现-gSOAP简介教程例子-gSOAP下载页面
源下载链接地址:https://sourceforge.net/projects/gsoap2/files/oldreleases/截止2020-1-19本说明时候,是2.8.97的版本工作的工程代码里面含有gsoap的代码,对应版本是2.8.22的搜集来查看一下。gSOAP编译工具提供了一个SOAP/XML 关于C/C++ 语言的实现,从而让C/C++语言开发web服务或客户端程序的...原创 2020-01-19 10:22:30 · 623 阅读 · 0 评论 -
c++的构造函数为什么不能是虚函数,而基类的析构函数必须是虚函数?
构造函数为什么不能是虚函数呢?首先需要了解 vptr指针和虚函数表的概念,以及这两者的关联。vptr指针指向虚函数表,执行虚函数的时候,会调用vptr指针指向的虚函数的地址。当定义一个对象的时候,首先会分配对象内存空间,然后调用构造函数来初始化对象。vptr变量是在构造函数中进行初始化的。又因为执行虚函数需要通过vptr指针来调用。如果可以定义构造函数为虚函数,...转载 2019-08-30 08:52:43 · 484 阅读 · 0 评论 -
宽字节 多字节 单字节 的问题
感觉比较混乱,学习了一通,做个记录。宽字符串与单字节字符串之间的转换。 C++标准里面已经提供了:宽字节转单字节:size_t wcstombs( char *mbstr, const wchar_t *wcstr, size_t count );单字节转宽字节:size_t mbstowcs( wchar_t *wcstr, const char *mbstr, si转载 2014-03-20 17:33:15 · 6087 阅读 · 0 评论 -
c++中far,near区别
原文地址:c++中far,near区别作者:雪后DE阳光C/C++中near和far的区别 关键字near和far受目标计算机体系结构的影响。目前编程中使用不多。 near关键字创建一个指向可寻址内存低端部分的目标指针。这些指针占用内存的单一字节,并且他们能够指向的内存单元被限制到256个位置,通常是在 0x0000~0x00ff范围中。转载 2014-04-12 17:43:13 · 969 阅读 · 0 评论 -
关于printf()函数和浮点数 输出格式汇总
关于printf()函数和浮点数http://www.cnblogs.com/cj695/archive/2011/10/28/2227890.htmlprintf的格式控制的完整格式:% - 0 m.n l或h 格式字符下面对组成格式说明的各项加以说明:①%:表示格式说明的起始符号,不可缺少。②-:有-表示左对齐输出,如省略表示右对齐输出。转载 2016-11-04 11:23:48 · 37606 阅读 · 0 评论 -
#ifdef __cplusplus 有什么作用
百度知道:一般用于将C++代码以标准C形式输出(即以C的形式被调用),这是因为C++虽然常被认为是C的超集,但是C++的编译器还是与C的编译器不同的。C中调用C++中的代码这样定义会是安全的。一般的考虑跨平台使用方法如下: #ifdefined(__cplusplus)||defined(c_plusplus) //跨平台定义方法extern "C"{#en转载 2012-03-16 22:29:46 · 45391 阅读 · 3 评论 -
浅析C++中的this指针 通过空指针(NULL)可以正确调用一些类的成员函数?
http://blog.csdn.net/starlee/article/details/2062586 有下面的一个简单的类:class CNullPointCall{public: static void Test1(); void Test2(); void Test3(int iTest); void Test4(转载 2017-09-28 11:18:09 · 1091 阅读 · 0 评论 -
跟Google学写代码--Chromium/base--stl_util源码学习及应用
Ttile: Chromium/base–stl_util源码学习及应用Chromium是一个伟大的、庞大的开源工程,很多值得我们学习的地方。今天与大家分享的就是Chromium下base中的stl_util,是对stl的补充,封装,更有利于我们的使用,完全可以移植到自己的C++工程项目中来。1 释放STL内存 Clears internal memory of an转载 2017-10-26 16:38:21 · 370 阅读 · 0 评论 -
值得推荐的C/C++框架和库 (真的很强大)
值得推荐的C/C++框架和库 (真的很强大)值得学习的C语言开源项目- 1. WebbenchWebbench是一个在Linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。下载链接:http://home...转载 2018-04-28 09:31:35 · 418 阅读 · 0 评论 -
单例模式及C++实现代码
单例模式及C++实现代码单例模式单例模式,可以说设计模式中最常应用的一种模式了,据说也是面试官最喜欢的题目。但是如果没有学过设计模式的人,可能不会想到要去应用单例模式,面对单例模式适用的情况,可能会优先考虑使用全局或者静态变量的方式,这样比较简单,也是没学过设计模式的人所能想到的最简单的方式了。一般情况下,我们建立的一些类是属于工具性质的,基本不用存储太多的跟自身有关的数据,在这种情况...转载 2018-11-06 09:35:39 · 674 阅读 · 0 评论 -
宏定义中使用do{}while(0)的好处
#define MACRO_NAME(para) do{macro content}while(0)的格式,总结了以下几个原因:1,空的宏定义避免warning:#define foo() do{}while(0)2,存在一个独立的block,可以用来进行变量定义,进行比较复杂的实现。3,如果出现在判断语句过后的宏,这样可以保证作为一个整体来是实现:#define foo(...转载 2019-01-19 16:28:25 · 530 阅读 · 0 评论 -
格式化输入输出
内容比较简单.就是想用的时候,忽然想不起来一个拼写.晕...printfscanffprintfsprintfsscanfsscanf( dtm, "%s %s %d %d", weekday, month, &day, &year );fscanf(fp,"%s%d%lf",a,&b,&c);//这里%s对应的a不需要加上取地址符号&,因...原创 2019-06-11 09:36:50 · 322 阅读 · 0 评论 -
编程命名规范之 Google C++ 编程命名规范 搜集
该文的图片不错,值得打开看看https://blog.csdn.net/f_zyj/article/details/82470462C++命名规范(参考google C++规范)https://blog.csdn.net/u014294166/article/details/52772133转载 2019-08-07 17:53:44 · 155 阅读 · 0 评论 -
extern “C” 阅读笔记
extern “C” 阅读笔记 (转自---http://www.vcfans.com/2008/03/extern-c-read-the-notes.html)本以为很简单,仔细阅读了一下 C++ 标准,发现内容还不少。总结了一下。要点:函数类型,函数名,变量名具有语言链接性,language linkage。语言链接性可能会影响到名字以及调用约定等,由实现决定。转载 2012-03-16 23:35:48 · 1132 阅读 · 0 评论