In the following code example, does the destructor of the shared pointer delete the object that's been destructed defined by new?  auto object = std::shared_ptr&lt;Foo&gt;(new Foo());  I found this in some legacy code and I'm wondering if this causes memleaks or not.
What is a smart pointer and when should I use one?
Working with IPv6 Addresses in PHP After searching around somewhat thoroughly, I noticed a slight lack of functions in PHP for handling . For my own personal satisfaction I created a few functions to help the transition.  The IPv6ToLong() function is a temporary solution to that brought up here: . It will split the IP in to two integers and return them in an array.  /**  * Convert an IPv4 address to IPv6  *  * @param string IP Address in dot notation (192.168.1.100)  * @return string IPv6 formatted address or false if invalid input  */ function IPv4To6($Ip) {     static $Mask = '::ffff:'; // This tells IPv6 it has an IPv4 address     $IPv6 = (strpos($Ip, '::') === 0);     $IPv4 = (strpos($Ip, '.') &gt; 0);      if (!$IPv4 &amp;&amp; !$IPv6) return false;     if ($IPv6 &amp;&amp; $IPv4) $Ip = substr($Ip, strrpos($Ip, ':')+1); // Strip IPv4 Compatibility notation     elseif (!$IPv4) return $Ip; // Seems to be IPv6 already?     $Ip = array_pad(explode('.', $Ip), 4, 0);     if (count($Ip) &gt; 4) return false;     for ($i = 0; $i &lt; 4; $i++) if ($Ip[$i] &gt; 255) return false;      $Part7 = base_convert(($Ip[0] * 256) + $Ip[1], 10, 16);     $Part8 = base_convert(($Ip[2] * 256) + $Ip[3], 10, 16);     return $Mask.$Part7.':'.$Part8; }  /**  * Replace '::' with appropriate number of ':0'  */ function ExpandIPv6Notation($Ip) {     if (strpos($Ip, '::') !== false)         $Ip = str_replace('::', str_repeat(':0', 8 - substr_count($Ip, ':')).':', $Ip);     if (strpos($Ip, ':') === 0) $Ip = '0'.$Ip;     return $Ip; }  /**  * Convert IPv6 address to an integer  *  * Optionally split in to two parts.  *  * @see https://stackoverflow.com/questions/420680/  */ function IPv6ToLong($Ip, $DatabaseParts= 2) {     $Ip = ExpandIPv6Notation($Ip);     $Parts = explode(':', $Ip);     $Ip = array('', '');     for ($i = 0; $i &lt; 4; $i++) $Ip[0] .= str_pad(base_convert($Parts[$i], 16, 2), 16, 0, STR_PAD_LEFT);     for ($i = 4; $i &lt; 8; $i++) $Ip[1] .= str_pad(base_convert($Parts[$i], 16, 2), 16, 0, STR_PAD_LEFT);      if ($DatabaseParts == 2)             return array(base_convert($Ip[0], 2, 10), base_convert($Ip[1], 2, 10));     else    return base_convert($Ip[0], 2, 10) + base_convert($Ip[1], 2, 10); }   For these functions I typically implement them by calling this function first:  /**  * Attempt to find the client's IP Address  *  * @param bool Should the IP be converted using ip2long?  * @return string|long The IP Address  */ function GetRealRemoteIp($ForDatabase= false, $DatabaseParts= 2) {     $Ip = '0.0.0.0';     if (isset($_SERVER['HTTP_CLIENT_IP']) &amp;&amp; $_SERVER['HTTP_CLIENT_IP'] != '')         $Ip = $_SERVER['HTTP_CLIENT_IP'];     elseif (isset($_SERVER['HTTP_X_FORWARDED_FOR']) &amp;&amp; $_SERVER['HTTP_X_FORWARDED_FOR'] != '')         $Ip = $_SERVER['HTTP_X_FORWARDED_FOR'];     elseif (isset($_SERVER['REMOTE_ADDR']) &amp;&amp; $_SERVER['REMOTE_ADDR'] != '')         $Ip = $_SERVER['REMOTE_ADDR'];     if (($CommaPos = strpos($Ip, ',')) &gt; 0)         $Ip = substr($Ip, 0, ($CommaPos - 1));      $Ip = IPv4To6($Ip);     return ($ForDatabase ? IPv6ToLong($Ip, $DatabaseParts) : $Ip); }   Someone please tell me if I'm reinventing the wheel here or I've done something wrong.  This implementation converts IPv4 to IPv6. Any IPv6 address it doesn't touch. Rooks on a 8 by 8 checker board. Probability problem Two rooks are placed on an 8 by 8 chessboard such that they're in different squares. What is the probability they can't attack each other? Rooks can attack each other if and only if they're in the same row or column. I know that there are questions like this but they give the general numbers not the probability I am not sure how to start the questions and I have looked at this questions for hours. Any help would be welcome. Can a new save withdraw from the pokemon bank? I've been considering restarting my save and replaying the story with access to the entire National Pokedex (Minus a few Event-only Pokemon I'm missing) from the start. But I would first like to confirm: Can I withdraw my stored Pokemon from the bank if my game is reset? It seems that the only contributing factor is that I end up signed in with the same Nintendo Network ID, so as long as my network ID remains the same, I can withdraw stored Pokemon regardless of what save-game or cartridge is in my system, correct?  While I'm reasonably confident it works the way I think it does, past experience (My Pokemon Ranch being tied to specific trainer IDs, and something about the dream world being tied to the game's wireless settings) has made me just cautious enough to ask before attempting. How can I check whether a variable is defined in JavaScript? How to check whether a JavaScript variable defined in cross-browser way?  I ran into this problem when writing some JavaScript utilizing FireBug logging. I wrote some code like below:  function profileRun(f) {     // f: functions to be profiled     console.profile(f.constructor);     f();     console.profileEnd(f.constructor); }   It works fine in FireFox/FireBug, but it reports error in IE8 RC1. So, I'd like to do some checking whether console variable exists in the execution environment.  Below code works fine in FireFox, but not in IE8 RC1.   function profileRun(f) {     if (console != undefined) {         console.profile(f.constructor);     }      f();      if (console != undefined) {         console.profileEnd(f.constructor);     } }   However, if I do it this way. It works in IE8 RC1. Why?   function profileRun(f) {     if (window.console != undefined) {         console.profile(f.constructor);     }      f();      if (window.console != undefined) {         console.profileEnd(f.constructor);     } }   Is there any cross-browser way to check it? How exactly does time slow down near a black hole? How exactly does time slow down near a black hole? I have heard this as a possible way of time traveling, and I do understand that it is due in some way to the massive gravity around a black hole, but how exactly does that massive gravity slow down time? Let $X \sim Bin(n,p)$ show that $X/n \nsim Bin()$ Let $X \sim Bin(n,p)$   Part A.  Show that the argument      "Then $X/n \sim Bin()$ with $E[X/n]=p$and $Var[X/n]=pq/n$"    is false.   My book says we can prove this result using a moment generating function. But to me it makes no intuitive sense: We have Bin-distributed RV $X$ and if we rescale it with $1/n$ of course it will be Bin-distributed.  And we know from standard formulas that $E[aX]=aE[X]$ and $Var[aX] = a^2Var[X]$ so I think the argument is correct.   (For full disclosure, the argument we should falsify according to the book is "Let X be a binomial random variable with mean np and variance np(1−p). Show that the ratio X/n also has a binomial distribution with mean p and variance p(1−p)/n." But I think the argument is correct. )    Ok, now I get part A. Here is Part B. Prove it using the moment generating function of $X/n$.   Attempt: I get $$m_X(t)=E[\exp(tX/n)]=(m_X(t))^{1/n}$$ Definite Integral: $\int_0^1\frac{x^{2} -1}{\log x}\,dx$ How to figure out the following integral? I have not been able to solve it from some time. $$\int_0^1\frac{x^{2} -1}{\log x}\,dx$$ Getting ssh to execute a command in the background on target machine The actual period of a pendulum at 90°. Looking for the correct formula Do you have access to any scientific experiment which gives the period of a pendulum when the angle is $90^\circ$:     says $T$ varies to about $18\%$ up to $90^\circ,$ so for a seconds pendulum the complete period would be roughly $2.36.$    I d'like to know the ratio at $90^\circ$ with a good approximation, and the span it can vary in relation to air friction, if the bob  is not massive.  Also, I'd like to know the max. speed of the bob at $P_0$ and how it compares with the speed of same ball sliding without friction on a circular surface, would it be the same?      What I am trying to understand here is rather complex, I'll try to explain:  If the block is placed on an air-track or other frictionless surface, the block would acquire a certain speed, momentum and KE in the opposite direction, right? same amount of momentum is lost by the bob and we can find speed loss.    Isn't the same amount of speed lost by the bob when it is attached to a pendulum?  Is this an important factor or may be the most important factor (more relevant than air friction or friction at the pivot) for the increase of the period when the angle is greater than $30^\circ$?  I figured out that this factor can account for about one third of the $18\%$ increase, can you give a more accurate value?   What I am suggesting is that this (loss of horizontal momentum, which is made clear when the bob is not attached to a rod but slides on a block) is the most important factor that makes the actual period increase when the starting point deviates on the vertical direction. Selecting through one-to-many relationship I'm trying to make a species distribution project where I can select a species from a non-spatial list of species and the selection would highlight (select) all the counties to which the species has been attributed.  Simplified example data: species, a non-spatial table of species (CSV with header): "species" "Mus borealis" "Mus australis"  species_distributions, a non-spatial relation table (csv with header): "species","county" "Mus borealis","North" "Mus borealis","Central" "Mus australis","South" "Mus australis","Central"  counties, a spatial feature class representing county boundaries (first row = field name): "county" "North" "South" "Central" "West"  So if I select "Mus borealis" from the species table, the "North" and "Central" counties would be highlighted in the map. Seems like a simple scenario, but I have been unable to uncover a solution on my own. The closest I've found is a plugin "Select by relationship" but it doesn't appear to be available for QGIS 3 (I'm using QGIS 3.4.3). I have a PostGIS server available. Using "the" instead of "a" for something that isn't a specific object I've been curious about this for a while.  Generally, one uses "the" if they mean a specific object ("The copy of Lord of the Rings I bought yesterday") instead of any object that fits a description ("I have a copy of Lord of the Rings").  However I've seen "the" used in some cases where the phrase doesn't refer to a specific object. I've noticed it mostly being about technology, such as "This game requires the Classic Controller" (seen on some Wii Virtual Console games). While saying "This game requires a Classic Controller" seems to be correct as well, using "the" doesn't feel wrong either.  The controller's page on Wikipedia also uses "the":   What is the rule that allows the use of "the" in this context?  I presume it has something to do with "Classic Controller" being a proper noun. How to fix "W: Duplicate sources.list entry"? I keep getting this warning whenever I try to run sudo apt-get update.  W: Duplicate sources.list entry http://archive.ubuntu.com/ubuntu/ precise-updates/main i386 Packages (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise-updates_main_binary-i386_Packages) W: You may want to run apt-get update to correct these problems   Below is the output from /etc/apt/sources.list file:  deb http://archive.ubuntu.com/ubuntu precise main restricted deb-src http://archive.ubuntu.com/ubuntu precise main restricted  deb http://archive.ubuntu.com/ubuntu precise-updates main restricted deb-src http://archive.ubuntu.com/ubuntu precise-updates main restricted  deb http://archive.ubuntu.com/ubuntu precise universe deb-src http://archive.ubuntu.com/ubuntu precise universe deb http://archive.ubuntu.com/ubuntu precise-updates universe deb-src http://archive.ubuntu.com/ubuntu precise-updates universe  deb http://archive.ubuntu.com/ubuntu precise multiverse deb-src http://archive.ubuntu.com/ubuntu precise multiverse deb http://archive.ubuntu.com/ubuntu precise-updates multiverse deb-src http://archive.ubuntu.com/ubuntu precise-updates multiverse  deb http://archive.ubuntu.com/ubuntu precise-security main restricted deb-src http://archive.ubuntu.com/ubuntu precise-security main restricted deb http://archive.ubuntu.com/ubuntu precise-security universe deb-src http://archive.ubuntu.com/ubuntu precise-security universe deb http://archive.ubuntu.com/ubuntu precise-security multiverse deb-src http://archive.ubuntu.com/ubuntu precise-security multiverse   How do I fix it? How do I copy vertex groups from one object to another? How to convert strings into integers in Python? How to show $(mn)!$ is divisible by $(m!)^n$? How to show $(mn)!$ divides $(m!)^n$, $m$ and $n$ is integers? Showing that $\Bbb R[x] / \langle x^2 + 1 \rangle$ is isomorphic to $\Bbb C$ question Show that $\Bbb R[x] / \langle x^2 + 1 \rangle$ is isomorphic to $\Bbb C$.      Let $\phi$ be the homomorphism from $\Bbb R[x]$ onto $\Bbb C$ given by   $f(x) \rightarrow f(i)$ (that is, evaluate a polynomial in $\Bbb R[x]$   at $i$).  Then $x^2 + 1 \in \operatorname{Ker} \phi$ and is clearly a   polynomial of minimum degree in $\operatorname{Ker} \phi$.  Thus,   $\operatorname{Ker} \phi = \langle x^2 + 1 \rangle$ and $\Bbb R[x] /\langle x^2 + 1 \rangle$ is isomorphic to $\Bbb C$.   My question is:  How is $x^2 + 1$ a polynomial of minimum degree in $\operatorname{Ker} \phi$? Let $(X,\mathcal{M},\mu)$ be a measure space and $\{f\}$ be a sequence of functions on $X$, each of which is integrable over $X$. Show that $\{f_n\}$ is uniformly integrable if and only if for each $\varepsilon \gt 0$, there is a $\delta \gt 0$ such that for any natural number $n$ and measurable subset $E$ of $X$, if $\mu(E) \lt \delta$, $$ \left|\int_E f_n~d\mu\right| \lt \epsilon.$$     I think one direction $(\Rightarrow)$ is clear. Since $f_n$ being uniformly integrable imply that for every $\varepsilon\gt 0,~\exists \delta \gt 0$ such that for any $E\in \mathcal{M},~\mu(E)\lt \delta$, $\int_E |f_n|~d\mu$ for every natural $n$. But then   $$ \left|\int_E f_n~d\mu\right|\le \int_E|f_n|~d\mu \lt \varepsilon.$$    Any suggestions for the other direction?   Edit:  Following Davide's suggestions, I have   $$ \begin{align*} \int_E |f_n|~d\mu &amp; \le \int_{E\cap [f_n \ge 0]} f_n~d\mu + \int_{E\cap [f_n \lt 0]} (-f_n)~d\mu\\ &amp; = \left| \int_{E\cap [f_n \ge 0]} f_n~d\mu \right| + \left| \int_{E\cap [f_n \lt 0]}f_n~d\mu \right| \\ &amp; \lt \varepsilon + \varepsilon = 2\varepsilon. \end{align*} $$ Why is $\frac{1}{\infty } \approx 0 $ and $ \frac{1}{0} = {\infty}$? First I have checked the search option but found nothing relevant to my problem and also level of math. I just started learning the language of mathematics, on my own and I have trouble understanding why  $  \frac{1}{\infty } \approx 0 $ and  why $\frac{1}{0} = {\infty}$?  I want to know how exactly do I get to these answers. It might sound strange but it's hard for me as a beginner to picture things like this on my own. Why isn't there a truly unified package manager for Linux? Why isn't there a unified package manager that acts as an interface between the end-user and the underlying low-level package manager (apt, yast, pacman, etc.)?  Is it hard to do and therefore not practical, or is there a genuine obstacle making it impossible to do? What is this “(arg: 1)” appearing in terminal/tty after I pressed a combination of keys? In a virtual terminal I (accidentally) pressed Win+1 and got a new line consisting of  (arg: 1)   As long as I keep Win pressed, all numbers I press get appended to the number in the parentheses, e.g. Win and 1+4 yields (arg:14).  When I (after releasing Win) press any key, that character is printed as many times as the number reads and the (arg: ...) expression is replaced by the standard prompt.  Does anybody know what happens here?