C++ 在一个源文件中使用另一个源文件中的矢量定义
c++ use a vector define in one source file in another source file
如果我定义一个向量,例如vector<int> vect{ 10, 20, 30 };
在源.cpp
文件中,我想将其传递给另一个源文件中的函数,例如function(vect)
是执行此操作以创建头文件并使向量extern
并将此头文件包含在两个源文件中的唯一方法。
有没有标题可以做到这一点?
如果您将向量作为参数传递(如您所说function(vect)
(,则无需使向量extern
并将其放在头文件中。
您所需要的只是对功能进行原型设计,例如
void function(vector<int>& vect);
并将其放在头文件中。将该头文件包含在定义function
的文件和调用function
的文件中,您就完成了。
你可以在没有头文件的情况下做到这一点(但为什么?(只需将原型放在调用函数的文件中即可。然而,这是一个较差的解决方案。为什么要避免头文件?
不,您不需要头文件来声明vect
对象。只要function
的声明可用,无论是直接还是通过头文件,您就可以在调用function
中使用vect
。
相关文章:
- 删除一个线程上有数百万个字符串的大型哈希映射会影响另一个线程的性能
- 运行同一解决方案的另一个项目的项目
- C++ 在一个源文件中使用另一个源文件中的矢量定义
- 构建并使用使用另一个共享库的源文件中的共享库.(Rinside)
- C++编译器在一个源文件中的一个函数调用中引发错误,但在具有相同函数调用的另一个源文件中不会引发错误
- g++编译存在于另一个目录中的源文件
- 导出visual studio c++项目以在另一个项目中使用,而不显示.cpp和.h源文件
- 访问另一个源文件C++中的变量
- 如何从另一个.cpp源文件调用main.cpp中定义的方法
- 如何从另一个源文件访问变量的值
- 使用 clang 解析命名空间:在另一个源文件中包含标头或直接解析标头时,AST 差异
- 如何有效地使用结构定义,包括来自另一个源文件的运算符
- C++ 从一个源文件中声明/定义的变量从另一个源文件访问另一个源文件
- C++访问指向另一个源文件中某个类的指针向量
- 为什么全局变量由另一个源文件中的类初始化
- 如何从另一个源文件引用C++Lambda
- 将源文件包括在另一个源中
- 把控制发回主站.Cc文件在我的c++项目从另一个源文件
- 创建并包含一个带有函数声明的头文件,然后是一个带有定义的源文件,然后是另一个带有函数调用的源文件
- 为什么编译器抱怨对constexpr函数的未定义引用,即使它是在另一个源文件中定义的