C++ 使用 main.cpp 文件中的对象
C++ Use object from main.cpp's file
我有一个程序(matrix.hpp、matrix.cpp、main.cpp)和类matrix_t。在main.cpp中,我用构造函数的类创建了一个对象"a",并且在matrix.cpp中有一个函数:
it_t Matrix_t::element(ix_t i,ix_t j,Matrix_t& SM){
if ((i<1)||(i>m_)||(j<1)||(j>n_)){
cerr << "Error" << endl;
return 0; }
int pos = (i-1)*SM.n_+j-1;
return SM.base_[pos]; }
如果我在matrix.cpp中创建了一个新对象"B",我可以用这种方式调用上一个函数:元素(1,1,B)。但是如果我传递在main.cpp中创建的对象"A"?如果我编码:element(1,1,A)
,我会得到一个错误(a没有声明,逻辑)。
用"A"对象调用element()
的形式是什么?
PD:这是主.cpp
int main(int argc,char** argv)
{ Matrix_t A;
A.read(cin);
A.write(cout);
const double det=A.determinant();
cout << "Determinant: " << det <<
"n" << endl;
return 0;
}
您可以在范围内的A
上调用Matrix_t::element
,其中A
可见。所以在的主要功能
#include <iostream>
#include "matrix.hpp"
using namespace std;
int main(int argc,char** argv)
{
Matrix_t A;
A.read(cin);
A.write(cout);
const double det=A.determinant();
cout << "Determinant: " << det << "n" << endl;
//-----------
auto z = A.element(1,1,B);
// or if you wish, B.element(1,1,A)
//-----------
return 0;
}
相关文章:
- CMake-按正确顺序将项目与C运行时对象文件链接
- 如何在h文件中包含.o对象文件
- 停止cmake target_link_libraries将插件中静态库的两个对象文件链接到静态库本身
- 从对象文件(.o)在macos上制作归档文件(.a文件)
- 检测 COFF 对象文件中C++内联符号
- 特定对象文件的单线程生成
- 使用对象文件读取三角形数据网格
- 链接时,不同静态库中的同一对象文件
- 防止临时对象文件访问 MSVC 中的磁盘
- 对在不同二进制文件中创建的对象文件的依赖关系
- 内联函数的函数本地静态对象是否在共享对象文件之间共享?
- 是否有正确的方法对生成文件中的对象文件使用模板命令?(C++)
- ./main:加载共享库时出错:libopencv_highgui.so.4.0:无法打开共享对象文件:没有这样的文件或
- 使用 make 将对象文件放在特定目录中
- 如何从 3d 对象文件中获取 3d 坐标
- 为什么我的生成文件没有生成对象文件?
- 如何在OSX上正确创建C++对象文件(.o)
- sf::Windows上的音乐:api-ms-win-crt-locale-l1-1-0.dll:无法打开共享对象文件
- 使用nvcc(CUDA-RINSIDE)正确链接对象文件
- 链接节点本机模块中的提升库,对象文件需要替代库版本