Forward declaration or complete definition required Although i have been using forward declaration for a considerable amount of time but never gave a thought to it seriously (my mistake)  Would be helpful if someone could give me pointers or any link regarding following queries :   How do we determine if we require a forward declaration or include is required ? How does compiler actually works in such cases ? any overhead ? Suppose i have two interdependent classes A and B. Both of them uses objects of each other, do i need to forward declare in both the classes.
When can I use a forward declaration? I am looking for the definition of when I am allowed to do forward declaration of a class in another class's header file:  Am I allowed to do it for a base class, for a class held as a member, for a class passed to member function by reference, etc. ?
Nilpotent matrix and basis for $F^n$ What counts as "entering a zone"? There are many actions that create persistent zones and have a trigger for their effect of among others: "...enters the zone..." What are the things that qualify as entering the zone?  Things that would seem to fit this would be:   Willing movement into the zone. Forced movement into the zone. Teleporting into the zone. Appearing inside the zone. Having the zone moved to include the square you occupy.   Do any of those listed not count as having entered the zone and why? And are there any that are not listed that would count as having entered the zone?  This is for D&amp;D 4e. OpenLayers low resolution and/or shifts in QGIS print composer? I'm having trouble with the OpenLayers Plugin of Qgis and the map composer:  If I create an OSM-background layer and if I want to export this, the OSM-Layer looks perfectly all right in the normal qgis program window. But in the map composer and after export the layer has shifted relatively to my other shape layers (EPSG:32633 - WGS 84 / UTM zone 33N).  The second thing is that the output resolution of the exported osm-layer is very, very poor.   A really bad way of getting around this whole trouble would be to increase the screen resolution and make a screenshot of the map composition window of qgis. But I don't think this would be very professional. It also would cause a lot of pain :)   I'm using Qgis 1.8.0-Lisboa under Linux. The openlayers plugin is version 0.92. Are cardinal numbers well defined? Or could we have something like $\aleph_{1/2}$? From what I understood, cardinal numbers are defined as:  $\aleph_0$ = the cardinality of $\mathbb{N}$ $\aleph_{n+1}$ = is the least cardinal number greater than $\aleph_n$  The continuum hypothesis states that the cardinality of $\mathbb{R}$ is  $\aleph_1$. I more or less understand this cannot be proven (does not follow from ZFC).  However, can it be proven dat there in fact is a 'least cardinal number' greater than $\aleph_0$?  Is it possible that there are sets with cardinality $\aleph_{1/2}$, $\aleph_{1/3}$, et cetera, so to speak?  Or expressed differently: is it possible that for every set A with cardinality CA > $\aleph_0$, there exists another set B with cardinality CB where CA > CB > $\aleph_0$? Select Command not working while run shell scripts on remote machine Etymological origin of "deosil" and "widdershins" Recovering a lost website with no backup? How to interpret this yum dependency error? I'm trying to install XRDP and I'm hitting the following:  [root@box ~]# yum -y install xrdp Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile  * base: centos.serverspace.co.uk  * epel: mirrors.coreix.net  * extras: mirror.sov.uk.goscomb.net  * updates: mirror.sov.uk.goscomb.net Resolving Dependencies --&gt; Running transaction check ---&gt; Package xrdp.x86_64 1:0.9.10-1.el7 will be installed --&gt; Processing Dependency: xrdp-selinux = 1:0.9.10-1.el7 for package: 1:xrdp-0.9.10-1.el7.x86_64 --&gt; Processing Dependency: xorgxrdp for package: 1:xrdp-0.9.10-1.el7.x86_64 --&gt; Running transaction check ---&gt; Package xorgxrdp.x86_64 0:0.2.10-4.el7 will be installed --&gt; Processing Dependency: xorg-x11-server-Xorg(x86-64) = 1.20.4 for package: xorgxrdp-0.2.10-4.el7.x86_64 ---&gt; Package xrdp-selinux.x86_64 1:0.9.10-1.el7 will be installed --&gt; Finished Dependency Resolution Error: Package: xorgxrdp-0.2.10-4.el7.x86_64 (epel)            Requires: xorg-x11-server-Xorg(x86-64) = 1.20.4            Installed: xorg-x11-server-Xorg-1.20.1-5.6.el7_6.x86_64 (@updates)                xorg-x11-server-Xorg(x86-64) = 1.20.1-5.6.el7_6            Available: xorg-x11-server-Xorg-1.20.1-3.el7.x86_64 (base)                xorg-x11-server-Xorg(x86-64) = 1.20.1-3.el7            Available: xorg-x11-server-Xorg-1.20.1-5.el7.x86_64 (updates)                xorg-x11-server-Xorg(x86-64) = 1.20.1-5.el7            Available: xorg-x11-server-Xorg-1.20.1-5.1.el7.x86_64 (updates)                xorg-x11-server-Xorg(x86-64) = 1.20.1-5.1.el7            Available: xorg-x11-server-Xorg-1.20.1-5.2.el7_6.x86_64 (updates)                xorg-x11-server-Xorg(x86-64) = 1.20.1-5.2.el7_6            Available: xorg-x11-server-Xorg-1.20.1-5.3.el7_6.x86_64 (updates)                xorg-x11-server-Xorg(x86-64) = 1.20.1-5.3.el7_6  You could try using --skip-broken to work around the problem  You could try running: rpm -Va --nofiles --nodigest   Now, I get that it's missing a dependency, however, it appears to be saying it requires xorg-x11-server-Xorg version 1.20.4.   It then continues to say version 1.20.1-5.6.el7_6 is installed.  From where I'm sitting, 4 is in the range 1-5 so I'm unclear what the issue is. They all seem to be for the right architecture.  Is 1-5 a version string in and of itself as opposed to a range, or -if not- what am I missing?  Solution: Thanks to , here's a workaround:     Having the same issue, I installed manually archived xorgxrdp   yum -y install https://archive.fedoraproject.org/pub/archive/epel/7/x86_64/Packages/x/xorgxrdp-0.2.9-1.el7.x86_64.rpm   then   yum -y install xrdp and it works Articles: When do I use "a", "the", or "__"? Let $a, b, c \in \mathbb{N}$. Show that if $a^2+b^2=c^2$ then $gcd(a,b)=gcd(a,c)=gcd(b,c)$.  Using basic divisibility criteria I couldn't advance anything. How to interpret decomposition plot and check for seasonality Spinor dotted and undotted indices I'm using Lubuntu for a while now, but found a couple of details that I wanted to view with Unity (that's another story).  Ok, the thing is: I've tried on a VM with Lubuntu to install Unity (sudo apt-get install unity) When the installation is over. I selected in the Lubuntu login Unity/Unity2D but did not work.  Right now I'm installing ubuntu-desktop, I am presuming that will work, but also it will change my login for example.  Is there a way to do a "clean" installation of Unity but not make major changes on my Lubuntu?  I would prefer Gnome-Shell instead of Unity. "Have you ever seen anyone walk (walking) the streets like that?" Have you ever seen anyone walk the streets like that? Have you ever seen anyone walking the streets like that?  Are both the above sentences grammatically correct? Do they mean the same?  I saw him kiss her the other day. I saw him kissing her the other day.  Are both the above sentences grammatically correct? Do they mean the same? And I'm sorry, if the latter two sentences come off immature .-. I couldn't come up with better sentences. I have a dell laptop with 4GB of ram and 500GB of storage.I just finished installing windows 8.1 32bit version, which utilizes 3GB of ram.  Can I install and run Ubuntu to utilize that unusable portion of Ram.Then how?  Thanks in advance Is there a package to secure rendered pdf with a password? How does ssh run a command? I'm using Bash on both client and server. When running a command over SSH:   ssh &lt;host&gt; 'declare' gives a list of shell variables. ssh &lt;host&gt; 'mount' gives a list of mountpoints.   However, declare is a Bash builtin, while mount is an external command. How does SSH know which to run if there is a shell builtin and an external command with the same name on the server? I've just happened to read this  on MO (that of course has been closed) and some of the answers to a similar  on MSE.   I know almost nothing of nonstandard analysis and was asking myself if something like the sentence « $1- 0.999 \dots$ is a nonzero positive infinitesimal» could be easily expressed and proved in nonstandard analysis.  First of all, what is 0.999... ? If we take the usual definition as a series or as a limit of a sequence of rationals, then it will still be a real number and equal to $1$ (I guess by "transfer principle", but please correct me if I'm wrong).  Instead, let's define  $$0.9_N:=\sum_{i=1}^N 9\cdot 10^{-i} $$  where $N\in{}^*\mathbb{N}\setminus\mathbb{N}$ is an infinite nonstandard natural number. This $0.9_N$ is a legitimate element of ${}^*\mathbb{R}$, expressed as $0.$ followed by an infinite number of "$9$" digits.  What can be said about $\epsilon_N:=1-0.9_N$ ? Is there an elementary proof that $\epsilon_N$ is a positive infinitesimal of ${}^*\mathbb{R}$ ? (by "elementary" I mean just order and field axioms and the intuitive facts about infinitesimals, like that for $x$ infinite $1/x$ is infinitesimal etc.; no nonprincipal ultrafilters &amp; C). When is "self" required? I have been using classes for only a short while and when I write a method, I make all variables reference self, e.g. self.foo.  However, I'm looking through the wxPython in Action book and notice that "self" isn't used all the time. For example:   import wx  class TextFrame(wx.Frame):     def __init__(self):         wx.Frame.__init__(self, None, -1, 'Text Entry Example',             size=(300, 100))         panel = wx.Panel(self, -1)         basicLabel = wx.StaticText(panel, -1, "Basic Control:")         basicText = wx.TextCtrl(panel, -1, "I've entered some text!",             size=(175, -1))         basicText.SetInsertionPoint(0)         pwdLabel = wx.StaticText(panel, -1, "Password:")         pwdText = wx.TextCtrl(panel, -1, "password", size=(175, -1),             style=wx.TE_PASSWORD)         sizer = wx.FlexGridSizer(cols=2, hgap=6, vgap=6)         sizer.AddMany([basicLabel, basicText, pwdLabel, pwdText])         panel.SetSizer(sizer)   The one below does use "self".  import wx class ButtonFrame(wx.Frame):     def __init__(self):         wx.Frame.__init__(self, None, -1, 'Button Example',             size=(300, 100))         panel = wx.Panel(self, -1)         self.button = wx.Button(panel, -1, "Hello", pos=(50, 20))         self.Bind(wx.EVT_BUTTON, self.OnClick, self.button)         self.button.SetDefault()     def OnClick(self, event):         self.button.SetLabel("Clicked")   If I remember correctly, "self" is reference to a particular instance of the class, so when is it not necessary? Is there a general rule of thumb? I find in many places mentions of pre-amplifiers being used to boost audio signals prior to feeding to a power amplifier.  Wikipedia's article on  gives some hints at their usage, but it doesn't really explain why it would be necessary to have two amplifiers in series rather than a single one with greater gain.  If a pre-amp is just a power amp with a smaller gain, what's the point, and why the distinction between the two kinds? Is the distinction in function, or simply purpose?