我试图为libreoffice解决一些错误(easyhacks),但我在理解代码时遇到了问题。这可能是因为我学习编程的方式,以前从未使用过大型代码库
以下是我的教科书和学校的编码方式。
#include<header1>
#include<header2>
using some namespace
class MyClass1{
.....
.....
};
class MyClass2 : public MyClass1{
.....
.....
};
int main() //entry point
{
int a , b ;
string str ; //use basic data types
MyClass1 Ca
.....
.....
}
即使要学习复杂的事情,这大致也是程序的样子 现在我看到的bug有特定的代码指针,所以我调查了它,这就是我的样子
//mediaItem.hxx --> represents embedded media object
#include<several_headers.hxx>
class RANDOM_MACRO MediaItem : public SomeOtherClass{
public :
const sal_uint& some_var ;
const OUString& some_str ; \\never before seen data types
virtual void someFoo ;
Virtual OUString getURL() ; \\function i am supposed to look into
private :
struct Impl ;
...
};
然后有一个定义函数的.cxx文件。
所以我有几个问题
P.S。也许这应该是一个单独的问题,但是人们建议我使用调试器来理解大型代码库,现在我再次使用调试器来理解小程序,但我不明白我如何在这里使用它,特别是在不知道入口点的情况下。谢谢....
答案 0 :(得分:1)
int
和std::string
等基本数据类型用于编写大型软件。其他类型也被使用。
int main(/*optionally args*/)
是所有程序的入口点(一些独立的嵌入式程序除外)。
Impl是 IMPLementation 的缩写。 Pimpl是使用不透明指针实现的习语的名称。它是指向IMPLementation的指针或有时私有IMPLementation 的缩写。
我之前使用过调试器来理解小程序,但我不明白我如何在这里使用它
调试器可用于理解所有程序,无论大小如何。