A Journey Into Non-Virtual PolymorphismRud Merriam | A Journey into Non-Virtual Polymorphism 2 Who Doesn’t Recognize This?? 1990 Borland Turbo C++Cppcon 2023 | Rud Merriam | A Journey into Non-Virtual Polymorphism 3 Background ● Experience – Medium.com (https://medium.com/@rudmerriam)Cppcon 2023 | Rud Merriam | A Journey into Non-Virtual Polymorphism 4 Polymorphism ● Greek: “many forms” (Obligatory statement) ● The use of a single variableCppcon 2023 | Rud Merriam | A Journey into Non-Virtual Polymorphism 5 Polymorphic Variables ● Base class pointer to derived class – Virtual functions are not bad! ● Standard Template Library0 码力 | 43 页 | 536.84 KB | 6 月前3
Optimizing Away Virtual Functions May Be PointlesscarePhoto by Tech Nick on unsplashSimple benchmark class Base { public: int concrete() const; virtual int virt() const; }; void benchmark(Base *b, size_t num_iterations) { auto start = Clock::now(); virt_duration = end-start;There are interesting technical details and surprising conclusions that virtual functions can be actually faster. Since CPU architectures are mentioned, I'd expect to see deep nt-vs-inheritance-vs-other- ways-performanceDoes it even matter?Conclusions ● The notion that “virtual functions are slower” is flat out wrong. ○ Which is not to say they are faster ○ Some of the suggested0 码力 | 20 页 | 1.19 MB | 6 月前3
BehaviorTree.CPP: Task Planning for Robots and Virtual Agentsname, const NodeConfig& config) : SyncActionNode(name, config) {} // You must override this virtual function NodeStatus tick() override { std::cout << "Type: [ApproachEnemy]. Instance:" <<0 码力 | 59 页 | 7.97 MB | 6 月前3
Common Package Specification (CPS) in Practice: A Full Round Trip Implementation in Conan C++ Package ManagerPackage Specification (CPS) in practice: A full round trip implementation in Conan C++ package manager CppCon24Outline - Introduction to Common Package Specification (CPS) - Creation of CPS files from0 码力 | 66 页 | 1.76 MB | 6 月前3
强大的音视频处理工具: FFmpegthon调⽤ ffmpeg;最后给出附录内容,包括help语法、⽂档资料等。 源码+浏览+下载 本书的各种源码、在线浏览地址、多种格式⽂件下载如下: Gitbook源码 crifan/media_process_ffmpeg: 强⼤的⾳视频处理⼯具:FFmpeg 如何使⽤此Gitbook源码去⽣成发布为电⼦书 详⻅:crifan/gitbook_template: demo how to0 码力 | 73 页 | 11.57 MB | 1 年前3
Django 4.2.x DocumentationPackaging your app Using your own package Publishing your app Installing Python packages with a virtual environment What to read next Finding documentation How the documentation is organized How documentation in production Learn more How to install Django on Windows Install Python About pip Setting up a virtual environment Install Django Colored terminal output Common pitfalls How to create database migrations Overview | Form API | Built-in fields | Built-in widgets Advanced: Forms for models | Integrating media | Formsets | Customizing validation The development process Learn about the various components and0 码力 | 3305 页 | 3.16 MB | 1 年前3
Django 5.1 DocumentationPackaging your app Using your own package Publishing your app Installing Python packages with a virtual environment What to read next Finding documentation How the documentation is organized How documentation production Learn more How to install Django on Windows Install Python About pip Setting up a virtual environment Install Django Colored terminal output Common pitfalls How to create database migrations Overview | Form API | Built-in fields | Built-in widgets Advanced: Forms for models | Integrating media | Formsets | Customizing validation The development process Learn about the various components and0 码力 | 3513 页 | 3.17 MB | 1 年前3
Django 5.1.2 DocumentationPackaging your app Using your own package Publishing your app Installing Python packages with a virtual environment What to read next Finding documentation How the documentation is organized How documentation production Learn more How to install Django on Windows Install Python About pip Setting up a virtual environment Install Django Colored terminal output Common pitfalls How to create database migrations Overview | Form API | Built-in fields | Built-in widgets Advanced: Forms for models | Integrating media | Formsets | Customizing validation The development process Learn about the various components and0 码力 | 3519 页 | 3.17 MB | 1 年前3
Django 4.1.x DocumentationPackaging your app Using your own package Publishing your app Installing Python packages with a virtual environment What to read next Finding documentation How the documentation is organized How documentation in production Learn more How to install Django on Windows Install Python About pip Setting up a virtual environment Install Django Colored terminal output Common pitfalls How to create database migrations Overview | Form API | Built-in fields | Built-in widgets Advanced: Forms for models | Integrating media | Formsets | Customizing validation The development process Learn about the various components and0 码力 | 3240 页 | 3.13 MB | 1 年前3
Django 4.0.x DocumentationPackaging your app Using your own package Publishing your app Installing Python packages with a virtual environment What to read next Finding documentation How the documentation is organized How documentation in production Learn more How to install Django on Windows Install Python About pip Setting up a virtual environment Install Django Colored terminal output Common pitfalls How to create database migrations Overview | Form API | Built-in fields | Built-in widgets Advanced: Forms for models | Integrating media | Formsets | Customizing validation The development process Learn about the various components and0 码力 | 3184 页 | 3.14 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100













