Online Tools Every C++ Developer Should KnowONLINE TOOLS EVERY C++ DEVELOPER SHOULD KNOW Thamara AndradeHELLO! 2 https://thamara.dev @thamyk I am Thamara Andrade (she/her) Lead Software Engineer @ CadenceHELLO! 3 https://thamara.dev @thamyk0 码力 | 11 页 | 1.11 MB | 6 月前3
Common Package Specification: Getting Build Tools to Talk to Each OtherA Common Package Specification: Getting Build Tools to Talk to Each Other Lessons Learned From Making Thousands of Binaries Consumable by Any Build System Diego Rodriguez-Losada @ CppCon 2023Outline0 码力 | 94 页 | 1.58 MB | 6 月前3
Powered by AI: A Cambrian Explosion for C++ Software Development Tools`University of Massachusetts Amherst Powered by AI: A Cambrian Explosion for C++ Software Development Tools Emery BergerCretaceous–Paleogene (K-Pg) extinction eventCretaceous–Paleogene (K-Pg) extinction e0 码力 | 128 页 | 23.40 MB | 6 月前3
LLVM's Realtime Safety Revolution: Tools for Modern Mission Critical SystemsLLVM’s Real-time Safety Revolution Tools for Modern Mission Critical SystemsChris Apple ● 10-year veteran of the audio industry ● Previously Dolby, Roblox, Spatial Inc. ● Currently: layabout David ⚠Neither RTSan nor the perf. constraints attributes can fully guarantee real-time safetyThese tools make writing real-time code saferINTERLUDE OVERAgenda 1. Real-time programming 2. Existing Dependent on clang 20+ Both Detect real-time safety issues Use [[clang::nonblocking]]Both tools were designed to complement each otherUse both, and write better real-time code!Thanks! ●0 码力 | 153 页 | 1.38 MB | 6 月前3
《深入浅出MFC》2/eExplorer(IE)3.01,它会建议你安装或更新之(图4-1a)。VC++ 5.0 盘片 中附有IE 3.01(英文版)。为什么要先安装Internet Explorer 呢?因为微软的所有Visual Tools(包括Visual C++、Visual Basic、Visual FoxPro、Visual J++、Visual InterDev 等) 都集中由所谓的Visual Studio(图4-1c Project - 可以在此操作project,例如加入文件、改变编译器和联结器选项等等。 Build - 我们在这里制作出可执行档,也在这里除错。如果进入除错模式,Build 会变成Debug。 Tools - 可以激活Browser、MFC Tracer、SPY++ 以及其它工具。 Window - 整合环境(IDE)中各大大小小窗口可在此管理。 Help - 线上辅助说明,包括书籍、期刊、文章、范例。有一个不错的检索工具。 的【Project/Setting...】,出现对话框。选择【Link】 附页, 于是可以设定联结器选项。 第4章 Visual C++ 整合開發環境 243 图4-5c 选择Visual C++ 的【Tools/Options... 】, 出现对话框。选择 【Format 】附页, 于是可以设定程序代码编辑器的字型与大小…。 Source Browser 好的Browser(浏览器)是令人0 码力 | 1009 页 | 11.08 MB | 1 年前3
micrograd++: A 500 line C++ Machine Learning Librarylearning process for those new to machine learning concepts, while also pro- viding the necessary tools for advanced applications. III. DISCUSSION A. Technical Description micrograd++ is built using in one file. • Small footprint : libmicrogradpp.a is only 122KB. • Inspiration from micrograd: Drawing inspiration from the simplicity and educational focus of the original micro- grad library, micrograd++0 码力 | 3 页 | 1.73 MB | 6 月前3
Back to Basics: Designing Classes (part 1 of 2), drawing{ std::move(strategy) } {} double getRadius() const noexcept; // ... getCenter(), getRotation(), ... void draw( /*...*/ ) const override { drawing->draw( this private: double radius; // ... Remaining data members std:unique_ptrdrawing; }; class DrawCircleStrategy { public: virtual ~DrawCircleStrategy() {} virtual void A Strategy-Based Solution Dependency Injectionvoid draw( /*...*/ ) const override { drawing->draw( this, /*...*/ ); } void serialize( /*...*/ ) const override; // ... private: 0 码力 | 87 页 | 5.64 MB | 6 月前3
Breaking Dependencies: The SOLID PrinciplesPrinter ByteStream22 The Single-Responsibility Principle (SRP) Square Overlap Circle Screen Drawing Printer ByteStream Printing Serialization23 The Single-Responsibility Principle (SRP) The design std::make_unique( 1.5 ) ); shapes.push_back( std::make_unique ( 4.2 ) ); // Drawing all shapes draw( shapes ); } 35 OCP: A Procedural Approachexplicit Shape( ShapeType t ) std::make_unique ( 1.5 ) ); shapes.push_back( std::make_unique ( 4.2 ) ); // Drawing all shapes draw( shapes ); } 47 OCP: An Object-Oriented Approachvoid draw() const override; 0 码力 | 96 页 | 2.14 MB | 6 月前3
Back to Basics: Design Patternsanalysis is related to performance building static/dynamic analysis and software visualization tools. ● I do consulting and technical training on modern C++, Concurrency, OpenGL, and Vulkan projects Useful for reading other folks work, useful as a software architect for larger systems ○ i.e. Drawing a diagram and planning before diving into code is wise!Sample UML for a Class Diagram (1/4) ● Example0 码力 | 96 页 | 2.10 MB | 6 月前3
High-Performance Cross-Platform Architecture: C++20 Innovationsexhibited by non-conforming programs. — Robert C. Martin (1996)Example: Drawing Shapes — The C Way Before OCP Shape Data Drawing Functions typedef enum { circle, square } shape_type; typedef struct [i])); break; case square: draw_square((square_shape*)(shapes[i])); break; } } }Example: Drawing Shapes — The Polymorphic C++ Way Shape Classes Draw Function // shape.h class shape { public:0 码力 | 75 页 | 581.83 KB | 6 月前3
共 189 条
- 1
- 2
- 3
- 4
- 5
- 6
- 19
相关搜索词
OnlineToolsEveryC++DeveloperShouldKnowCommonPackageSpecificationGettingBuildtoTalkEachOtherPoweredbyAICambrianExplosionforSoftwareDevelopmentLLVMRealtimeSafetyRevolutionModernMissionCriticalSystems深入深入浅出MFCmicrograd++500lineMachineLearningLibraryBackBasicsDesigningClassespartofBreakingDependenciesTheSOLIDPrinciplesDesignPatternsHighPerformanceCrossPlatformArchitecture20Innovations













