summaryrefslogtreecommitdiffstats
path: root/sip/glossary.html
blob: 0c026cb4819b3a025f081021b7f661ae01f2c223 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<h2><a name="abstract">Abstract</a></h2>
<p>
Abstract classes are used as base classes. You cannot create
an instance of an abstract class directly - you need to subclass
it. In the subclass, you need to overload <i>all</i> of the
class's <a href="#purevirtual">pure virtual</a> methods. These
are marked as "pure virtual" in these docs, and are also indicated
by a " = 0" at the end of the method declaration.
</p>
<p>
If your subclass doesn't overload the pure virtual methods in the
abstract base class, you won't be able to create an instance of it.
</p>

<h2><a name="purevirtual">pure virtual</a></h2>
<p>
Pure virtual methods are members of an <a href="#abstract">abstract</a>
class (they're what makes the class abstract in the first place). Pure
virtual methods are nothing more than place holders - there is no code
associated with them
</p>


<h2><a name="variables">variables</a></h2>
<p>
Class variables can be read and written from Python. Global or static
variables are <i>read only</i>. Variables that are "protected" or.
"private" in C++ are not implemented.
</p>

<h2><a name="slots">slots</a></h2>
<p>
When using Qt or KDE in C++, methods involving connections to slots
take 2 arguments: a QObject 'receiver' and a char* 'slot' name. In Python
you only need to provide a single value - the name of a Python callable
method or function which will be connected to a signal. The method or
function does not need to be in the class where it is reference, and does
not have to be in a class at all. There are other options - see the
"Signals and Slots" documentation for more information.
</p>