- 博客(13)
- 资源 (7)
- 收藏
- 关注
转载 探索软件架构的艺术:C4模型与4+1视图模型的比较与应用
C4模型,由Simon Brown提出,是一种用于软件架构可视化和文档化的方法。C4代表Context(上下文)、Containers(容器)、Components(组件)和Code(代码)四个层次,旨在提供从宏观到微观的软件系统视图。上下文视图(Context):展示系统整体在业务环境中的位置,包括与系统交互的外部实体(用户、系统/服务)。容器视图(Containers):展示系统内部的高层次结构,如Web应用、数据库、文件系统等。
2024-09-07 16:37:09
207
转载 代码设计 六大原则
代码设计 六大原则单一职责原则 Single Responsibility Principle定义:一个类或者一个接口,最好只负责一项职责。问题由来:类T负责两个不同的职责P1和P2。由于职责P1需要发生改变而需要修改T类,就有可能导致原来运行正常的职责P2功能发生故障。解决方法:遵循单一职责原则。分别建立新的类来对应相应的职责;这样就能避免修改类时影响到其他的职责;当遇到职...
2019-09-30 11:12:57
305
转载 git基本操作,一篇文章就够了
1. git简介在实际开发中,会使用git作为版本控制工具来完成团队协作。因此,对基本的git操作指令进行总结是十分有必要的,本文对一些术语或者理论基础,不重新码字,可以参考廖雪峰老师的博文,本文只对命令做归纳总结。git的通用操作流程如下图(来源于网络)主要涉及到四个关键点:工作区:本地电脑存放项目文件的地方,比如learnGitProject文件夹; 暂...
2019-09-25 10:51:46
161
原创 visual studio 代码格式设置
1、工具->选项->文本编辑器->c/c++->格式设置2、常规->启用ClangFormat支持3、缩进->设置缩进的style4、新行->设置新行的style总结:按照项目需要,自定义code style,可以保证代码风格一致,减少格式化所需的时间Ctrl+K+D 格式化代码,也可在常规选中,键入;和} 进行自动格式化...
2019-09-20 21:01:32
7059
原创 c&c++ 指针
1、int &*p; 是不正确的,*与p靠得最近,所以p是一个指针,但是这个指针的类型是int &,所以这个是错吴的, 因为不能创建引用的指针。int *& p,是正确的, &与p靠得最近,所以p是一个引用,这个引用的类型是int*,也就是一个指针变量的引用,但是必须初始化,否则也是错误的。. int a; int& ref = a;...
2019-09-18 20:36:06
206
原创 c++11新特性
1、泛化常量表达式constexprC++中常量表达式在遇上了函数调用或是对象构造函数时就终结。所以像是以下的例子是不合法的:int get_five() {return 5;}int value[get_five() + 5];// 预产生10个整数的数组。C++中非法C++11引进关键字 constexpr 允许使用者保证函数或是对象构造函数是编译期常数。以上的例子可以被写成...
2019-09-17 20:14:10
188
原创 visual studio 调试异常
未加载combase.pdbcombase.pdb 包含查找模块 combase.dll 的源文件所需的调试信息解决办法一:工具->选项->调试->常规选中 调试停止时自动关闭控制台解决方法二:调试->选项->符号->选中 Microsoft符号服务器运行 (等待从微软下载符号)解决问题...
2019-09-10 10:45:37
3809
转载 2009-08-27 22:21 C++调试时的错误例子及解决方法
C++调试时的错误例子及解决方法错误例子: CVTRES : fatal error CVT1100: 重复的资源。type:MANIFEST, name:1, language:0×0409 LINK : fatal error LNK1123: 转换到COFF 期间失败: 文件无效或损坏 解决方案: 我的编译环境是Microsoft Visual Studio 2005
2013-10-17 17:46:59
1350
转载 关于C++标准库介绍
标准库中提供了C++程序的基本设施。虽然C++标准库随着C++标准折腾了许多年,直到标准的出台才正式定型,但是在标准库的实现上却很令人欣慰得看到多种实现,并且已被实践证明为有工业级别强度的佳作。1、Dinkumware C++ Library参考站点:http://www.dinkumware.com/P.J. Plauger编写的高品质的标准库。P.J. Plauger博
2012-06-28 09:30:51
801
转载 VC使用CRT调试功能来检测内存泄漏
<br /> VC使用CRT调试功能来检测内存泄漏<br /> <br />C/C++ 编程语言的最强大功能之一便是其动态分配和释放内存,但是中国有句古话:“最大的长处也可能成为最大的弱点”,那么 C/C++ 应用程序正好印证了这句话。在 C/C++ 应用程序开发过程中,动态分配的内存处理不当是最常见的问题。其中,最难捉摸也最难检测的错误之一就是内存泄漏,即未能正确释放以前分配的内存的错误。偶尔发生的少量内存泄
2011-03-05 00:14:00
597
转载 C++中的内存泄露
<br />对于一个c/c++程序员来说,内存泄漏是一个常见的也是令人头疼的问题。已经有许多技术被研究出来以<br />应对这个问题,比如Smart Pointer,Garbage Collection等。Smart Pointer技术比较成熟,STL中已经<br />包含支持Smart Pointer的class,但是它的使用似乎并不广泛,而且它也不能解决所有的问题;Garbage <br />Collection技术在Java中已经比较成熟,但是在c/c++领域的发展并不顺畅,虽然很早就有人思考在C++
2011-03-03 09:42:00
1077
转载 内存访问越界
1. 原理分析<br />经常有些新C++程序员问:C++的类的成员个数是不是有限制,为什么我加一个变量后程序就死了?或者说:是不是成员变量的顺序很重要,为什么我两个成员变量顺序换一换程序就不行了?凡此种种之怪现象,往往都是内存访问越界所致。<br /><br />何谓内存访问越界,简单的说,你向系统申请了一块内存,在使用这块内存的时候,超出了你申请的范围。例如,你明明申请的是100字节的空间,但是你由于某种原因写入了120字节,这就是内存访问越界。内存访问越界的后果是:你的写入破坏了本不属于你的空间。<b
2011-02-28 10:26:00
697
转载 C++多线程安全性,原子代码段,Critical section应用
<br />原子代码段,Critical section 使用方法<br />使用方法<br />Example Code For Critical Sections with Win32 API/* Sample C/C++, Windows, link to kernel32.dll *///在windows平台下,调用了kernel32.dll的windows API函数#include <windows.h>static CRITICAL_SECTION cs;/* Th
2010-12-08 11:41:00
1088
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人