找到 34423 篇文章 关于编程

C++ 中的私有析构函数

Nishtha Thakur
更新于 2024年11月19日 18:21:52

659 次浏览

在 C++ 中,私有析构函数是在私有访问说明符内声明的析构函数,这意味着析构函数不能在类外部直接访问或调用,这对于设计模式很有用,在设计模式中,用户希望控制对象如何以及何时销毁。语法以下是私有析构函数的语法,它像任何其他析构函数一样在类中声明,但使用私有访问说明符。class MyClass {private: // 私有析构函数 ~MyClass() { }public: // 公共构造函数 MyClass() { // 构造函数代码在此 }};在这里,我们将看到什么将... 阅读更多

C++ 中 explicit 关键字的用法

Smita Kapse
更新于 2019年7月30日 22:30:26

851 次浏览

在这里,我们将看到 C++ 中 explicit 关键字的效果。在讨论之前,让我们看一个示例代码,并尝试找出它的输出。示例#include using namespace std; class Point {    private:       double x, y;    public:       Point(double a = 0.0, double b = 0.0) : x(a), y(b) {          //构造函数       }       bool operator==(Point p2) {          if(p2.x == this->x && p2.y == this->y)          return true;          return ... 阅读更多

在 C++ 中模拟 final 类

Anvi Jain
更新于 2019年7月30日 22:30:26

405 次浏览

在 Java 或 C# 中,我们可以使用 final 类。final 类是一种特殊的类。我们不能扩展该类来创建另一个类。在 C++ 中,没有这样的直接方法。在这里,我们将看到如何在 C++ 中模拟 final 类。在这里,我们将创建一个名为 MakeFinalClass 的额外类(它的默认构造函数是私有的)。此函数用于解决我们的目的。主类 MyClass 可以调用 MakeFinalClass 的构造函数,因为它们是友元类。有一件事我们必须注意,MakeFinalClass 也是一个虚拟基类。我们将使... 阅读更多

使用 C++ 中的 Tuple 和 Pair 从函数返回多个值

Nishtha Thakur
更新于 2019年7月30日 22:30:26

3K+ 次浏览

在 C 或 C++ 中,我们不能从函数返回多个值。要返回多个值,我们必须为函数提供输出参数。在这里,我们将看到使用 C++ 中的 tuple 和 pair STL 从函数返回多个值的另一种方法。Tuple 是一个能够保存元素集合的对象,其中每个元素可以是不同类型。Pair 可以创建一个由两个值组成的集合,这两个值可能是不同类型。Pair 本质上是一种特殊的 tuple,只允许两个值。让我们看一个例子,其中... 阅读更多

C++ 和 Java 中的 static 关键字

Smita Kapse
更新于 2019年7月30日 22:30:26

535 次浏览

在 C++ 或 Java 中,我们可以获得 static 关键字。它们大多相同,但在这两种语言之间存在一些基本差异。让我们看看 C++ 中的 static 和 Java 中的 static 之间的区别。静态数据成员在 Java 和 C++ 中基本上是相同的。静态数据成员是类的属性,它被所有对象共享。示例public class Test {    static int ob_count = 0;    Test() {       ob_count++;    }    public static void main(String[] args) {       Test object1 = new Test();   ... 阅读更多

C++ 和 Java 中的继承

Anvi Jain
更新于 2019年7月30日 22:30:26

1K+ 次浏览

在 C++ 和 Java 中,都有继承的概念。继承属性用于重用代码,并在两个对象之间建立关系。在这里,我们将看到 C++ 中的继承和 Java 中的继承之间的一些基本区别。在 Java 中,所有类都扩展 Object 类。因此,类始终只有一个级别的继承树。Object 类位于树的根部。让我们使用简单的代码检查这是否属实。示例//此代码位于名为 MyClass.java 的不同文件中 public class MyClass {    MyClass() ... 阅读更多

C++ 中的名称修饰和 extern “C”

Nishtha Thakur
更新于 2019年7月30日 22:30:26

952 次浏览

在 C++ 中,我们可以使用函数重载功能。使用此功能,我们可以创建具有相同名称的函数。唯一的区别是参数的类型和参数的数量。这里不考虑返回类型。现在问题来了,C++ 如何在目标代码中区分重载函数?在目标代码中,它通过添加有关参数的信息来更改名称。这里应用的技术称为名称修饰。C++ 没有标准化的名称修饰技术。因此,不同的编译器使用不同的技术。以下是一个名称修饰的示例。重载函数... 阅读更多

C++ 中与 sprintf 等效的内容是什么?

Smita Kapse
更新于 2019年7月30日 22:30:26

3K+ 次浏览

sprint() 函数存在于 C 和 C++ 中。此函数用于将某些内容存储在字符串中。语法类似于 printf() 函数,唯一的区别是,我们必须在其中指定字符串。在 C++ 中,我们也可以使用 ostringstream 来执行相同的操作。此 ostringstream 本质上是输出字符串流。它存在于 sstrem 头文件中。让我们看看如何使用它。示例#include #include using namespace std; int main() {    string my_str;    ostringstream os;    os

在 c++ 程序中编译多个 .cpp 文件

Anvi Jain
更新于 2019年7月30日 22:30:26

1K+ 次浏览

在这里,我们将看到如何在 C++ 程序中编译多个 cpp 文件。任务非常简单。我们可以将名称作为列表提供给 g++ 编译器,以将其编译成一个可执行文件要同时编译多个文件(如 abc.cpp 和 xyz.cpp),语法如下:g++ abc.cpp xyz.cpp要运行程序,我们可以使用:./a.out示例float area(float r){    return (3.1415*r*r); //圆的面积 } float area(float l, float w) {    return (l * w); //矩形的面积 }示例#include #include "area.cpp" using namespace std; main() {    cout 阅读更多

如何在 C++ 中声明全局变量

Nishtha Thakur
更新于 2019年7月30日 22:30:26

2K+ 次浏览

要在 C++ 中声明全局变量,我们可以在程序开始后声明变量。不在任何函数或块内。如果我们想声明一些将存储在不同文件中的变量,那么我们可以创建一个文件并存储一些变量。对于某些外部文件,有时我们需要在其中使用 extern 关键字。我们还必须将外部文件包含在实际程序文件中。示例extern int x = 10; extern int y = 20;示例#include #include"global.cpp" using namespace std; int main() {    cout

广告

© . All rights reserved.