21xrx.com
2024-12-22 19:12:04 Sunday
登录
文章检索 我的文章 写文章
如何在C++中在类外定义函数
2023-07-10 22:28:38 深夜i     --     --
C++ class function definition outside of class

在C++中,我们可以在类内定义函数,也可以在类外定义函数。类内定义函数通常用于短小的函数,而类外定义函数则可用于比较复杂的函数。

在类外定义函数时,需要注意以下几点:

1. 函数声明

在类内定义函数时,编译器会自动进行函数声明。而在类外定义函数时,我们需要手动进行函数声明。函数声明应该在类的头文件中定义,并且需要带上类的作用域解析运算符::

比如,我们需要在类外定义一个名为add的函数,在头文件中应该这样写:


class MyClass {

public:

  void sayHello();

  int add(int a, int b); // 函数声明

};

2. 函数定义

函数定义应该在类的源文件中进行,使用类作用域解析运算符::来引用类的成员变量和成员函数。

比如,我们需要在源文件中定义add函数:


#include "MyClass.h" // 头文件

int MyClass::add(int a, int b) {

  return a + b;

}

3. 访问限定符

在类内定义函数时,函数的访问限定符默认是public的,而在类外定义函数时,需要显式地指定访问限定符。

比如,我们需要在头文件中声明一个私有成员函数,并在源文件中进行定义:


class MyClass {

public:

  void sayHello();

  int add(int a, int b);

private:

  void printMessage(); // 私有成员函数的声明

};

// 在源文件中进行定义

void MyClass::printMessage()

  std::cout << "This is a private function." << std::endl;

通过以上几点的注意,我们可以在C++中成功地在类外定义函数。需要注意的是,在类外定义函数时,不仅要定义函数的实现,还要进行函数声明和访问限定符的指定。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复