c++ - Cpp 头文件缺少变量名

标签 c++

所以我正在查看一个包含以下声明的 String 头文件:

string(const char*);

输入参数没有变量名怎么用?另外,不写变量名有什么意义吗?我觉得如果你有一个接受 2 个相同类型参数的方法,你会被搞砸的。但主要问题是我什至如何在没有变量名的情况下访问这个输入参数。谢谢!

最佳答案

对于编译器而言,在声明函数时不需要知道参数的实际名称。它所需要的只是函数的签名:返回类型、名称和参数类型。

当您定义函数时,您只需要参数名称,即在源文件中。

// foo.h
void foo(const char*);

// foo.c
#include "foo.h"
void foo(const char * c) {
    //OK
}

void bar(const char*) {
    //Indeed, we have no way to access the parameter
}

只要这些签名匹配,一切都会正常进行。如果这是您的头文件,通常最好在声明中包含参数名称,因为它是有用的文档。

关于c++ - Cpp 头文件缺少变量名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19684294/

相关文章:

c++ - 我可以强制 C++ 类是非抽象的吗?

c++ - 我需要帮助了解如何在 C++ 中对包含多个带空格的字符串的集合或 vector 进行排序

c++ - 处理 socket::send 的 WSA_IO_PENDING

C++17 结合了 std::async 和 std::invoke

C++ : initialize static member large array

c++ - 覆盖 QWidget::resizeEvent(QResizeEvent* event) 的奇怪行为

c++ - 预期的类型说明符错误,关于我做错了什么的任何想法?

c++ - 从 RegQueryValueEx 获取正确的值

c++ - 在没有源代码的情况下使用 gdb 进行调试

c++ - 对 std::pair 的 vector 进行排序