<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns="http://purl.org/rss/1.0/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:cc="http://web.resource.org/cc/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/"
    xml:lang="ja">

    <channel rdf:about="http://hikarukaru.jugem.cc/?mode=rss">
    <title>::Hikaru's blog</title>
    <link>http://hikarukaru.jugem.cc/</link>
    <description>調べたこと, 考えたことをメモ.</description>
    <dc:language>ja</dc:language>
    <admin:generatorAgent rdf:resource="http://jugem.jp/?v=1.0"/>
    <cc:license rdf:resource="" />    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=114" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=113" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=112" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=111" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=110" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=109" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=108" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=107" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=106" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=102" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=101" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=100" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=99" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=98" />
        <rdf:li rdf:resource="http://hikarukaru.jugem.cc/?eid=97" />
      </rdf:Seq>
    </items>
    </channel>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=114">
    <link>http://hikarukaru.jugem.cc/?eid=114</link>
    <title>コマンドラインでバイナリ比較</title>
    <description>FC /B ファイル名1 ファイル名2</description>
<content:encoded><![CDATA[
FC /B ファイル名1 ファイル名2<br>
]]></content:encoded>
    <dc:subject>その他</dc:subject>
    <dc:date>2009-06-11T16:36:00+09:00</dc:date>
    <dc:creator>hikarukaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikarukaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=113">
    <link>http://hikarukaru.jugem.cc/?eid=113</link>
    <title>syntaxhighlighter / google-code-prettify</title>
    <description>syntaxhighlighter
// ファイル選択ダイアログ
var dialog = new ActiveXObject(&quot;UserAccounts.CommonDialog&quot;)
dialog.Filter = &quot;All Files (*.*)|*.*&quot;
dialog.ShowOpen();

// フォルダ選択ダイアログ
var app = new ActiveXObject(&quot;Shell.Application&quot;);
app.Br...</description>
<content:encoded><![CDATA[
<a href="http://code.google.com/p/syntaxhighlighter/" target="_blank">syntaxhighlighter</a><br/>
<pre name="code" class="js:nocontrols">// ファイル選択ダイアログ
var dialog = new ActiveXObject("UserAccounts.CommonDialog")
dialog.Filter = "All Files (*.*)|*.*"
dialog.ShowOpen();

// フォルダ選択ダイアログ
var app = new ActiveXObject("Shell.Application");
app.BrowseForFolder(0, "", 0);
</pre>
<a href="http://code.google.com/p/google-code-prettify/" target="_blank">
google-code-prettify</a><br />
<pre class="prettyprint">// ファイル選択ダイアログ
var dialog = new ActiveXObject("UserAccounts.CommonDialog")
dialog.Filter = "All Files (*.*)|*.*"
dialog.ShowOpen();

// フォルダ選択ダイアログ
var app = new ActiveXObject("Shell.Application");
app.BrowseForFolder(0, "", 0);
</pre>

]]></content:encoded>
    <dc:subject>その他</dc:subject>
    <dc:date>2009-02-18T11:53:58+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=112">
    <link>http://hikarukaru.jugem.cc/?eid=112</link>
    <title>ファイル選択ダイアログ</title>
    <description>
// ファイル選択ダイアログ
var dialog = new ActiveXObject(&quot;UserAccounts.CommonDialog&quot;)
dialog.Filter = &quot;All Files (*.*)|*.*&quot;
dialog.ShowOpen();

// フォルダ選択ダイアログ
var app = new ActiveXObject(&quot;Shell.Application&quot;);
app.BrowseForFolder(0, ...</description>
<content:encoded><![CDATA[
<div style="font-family:monospace; white-space:pre;">
// ファイル選択ダイアログ
var dialog = new ActiveXObject("UserAccounts.CommonDialog")
dialog.Filter = "All Files (*.*)|*.*"
dialog.ShowOpen();

// フォルダ選択ダイアログ
var app = new ActiveXObject("Shell.Application");
app.BrowseForFolder(0, "", 0);
</div>

]]></content:encoded>
    <dc:subject>WSH, JScript</dc:subject>
    <dc:date>2009-01-22T12:01:59+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=111">
    <link>http://hikarukaru.jugem.cc/?eid=111</link>
    <title>renameFile</title>
    <description>
function renameFile(path, name) &amp;#123;
  var fso = new ActiveXObject(&quot;Scripting.FileSystemObject&quot;);
  var file = fso.GetFile(path);
  file.Name = name;
&amp;#125;

</description>
<content:encoded><![CDATA[
<div style="font-family:monospace; white-space:pre;">
function renameFile(path, name) &#123;
  var fso = new ActiveXObject("Scripting.FileSystemObject");
  var file = fso.GetFile(path);
  file.Name = name;
&#125;
</div>

]]></content:encoded>
    <dc:subject>WSH, JScript</dc:subject>
    <dc:date>2009-01-21T10:06:20+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=110">
    <link>http://hikarukaru.jugem.cc/?eid=110</link>
    <title>sendToRecycleBin</title>
    <description>
function sendToRecycleBin(path) &amp;#123;
  var app = new ActiveXObject(&quot;Shell.Application&quot;)
  var recycle_bin_folder = app.Namespace(10);
  recycle_bin_folder.MoveHere(path);
  WScript.Sleep(200);
&amp;#125;

</description>
<content:encoded><![CDATA[
<div style="font-family:monospace; white-space:pre;">
function sendToRecycleBin(path) &#123;
  var app = new ActiveXObject("Shell.Application")
  var recycle_bin_folder = app.Namespace(10);
  recycle_bin_folder.MoveHere(path);
  WScript.Sleep(200);
&#125;
</div>

]]></content:encoded>
    <dc:subject>WSH, JScript</dc:subject>
    <dc:date>2009-01-20T21:51:26+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=109">
    <link>http://hikarukaru.jugem.cc/?eid=109</link>
    <title>quote, unquote</title>
    <description>
function quote(str) &amp;#123;
  return str.charAt(0) == '&quot;' &amp;&amp; str.charAt(str.length - 1) == '&quot;'
    ? str : '&quot;' + str + '&quot;';
&amp;#125;

function unquote(str) &amp;#123;
  return str.charAt(0) == '&quot;' &amp;&amp; str.charAt(str.length - 1) == '&quot;'
    ? str.substr...</description>
<content:encoded><![CDATA[
<div style="font-family:monospace; white-space:pre;">
function quote(str) &#123;
  return str.charAt(0) == '"' && str.charAt(str.length - 1) == '"'
    ? str : '"' + str + '"';
&#125;

function unquote(str) &#123;
  return str.charAt(0) == '"' && str.charAt(str.length - 1) == '"'
    ? str.substring(1, str.length - 1) : str;
&#125;
</div>
]]></content:encoded>
    <dc:subject>WSH, JScript</dc:subject>
    <dc:date>2009-01-20T09:17:30+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=108">
    <link>http://hikarukaru.jugem.cc/?eid=108</link>
    <title>confirm, prompt</title>
    <description>
function confirm(text) &amp;#123;
  var code = 'Function fn(text, buttons, title)&amp;yen;n'
    + 'fn = MsgBox(text, buttons, title)&amp;yen;nEnd Function';
  var sc = new ActiveXObject(&quot;ScriptControl&quot;);
  sc.Language = &quot;VBScript&quot;;
  sc.AddCode(code);
  r...</description>
<content:encoded><![CDATA[
<div style="font-family:monospace; white-space:pre;">
function confirm(text) &#123;
  var code = 'Function fn(text, buttons, title)&yen;n'
    + 'fn = MsgBox(text, buttons, title)&yen;nEnd Function';
  var sc = new ActiveXObject("ScriptControl");
  sc.Language = "VBScript";
  sc.AddCode(code);
  return sc.Run("fn", text, 4 | 32, "") == 6;
&#125;

function prompt(text, defaultText) &#123;
  var code = 'Function fn(text, title, defaultText)&yen;n'
    + 'fn = InputBox(text, title, defaultText)&yen;nEnd Function';
  var sc = new ActiveXObject("ScriptControl");
  sc.Language = "VBScript";
  sc.AddCode(code);
  return sc.Run("fn", text, "", defaultText);
&#125;

// 追記 - confirmはWshShell.Popupを使う方法もある
function confirm(text) &#123;
  var shell = new ActiveXObject("WScript.Shell");
  return shell.Popup(text, -1, "", 4 | 32) == 6;
&#125;
</div>

]]></content:encoded>
    <dc:subject>WSH, JScript</dc:subject>
    <dc:date>2009-01-20T09:15:28+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=107">
    <link>http://hikarukaru.jugem.cc/?eid=107</link>
    <title>構造体にナゾの隙間</title>
    <description>
以下のような構造体Bを定義すると、ナゾの隙間ができる。

struct A &amp;#123;
  virtual void funcA() &amp;#123;&amp;#125;
&amp;#125;;
struct B : virtual A &amp;#123;
  B() &amp;#123;&amp;#125;
  virtual void funcA() &amp;#123;&amp;#125;
&amp;#125;;

構造体Bのレイアウト
 0+-----+
 ...</description>
<content:encoded><![CDATA[
<div style="font-family:monospace; white-space:pre;">
以下のような構造体Bを定義すると、ナゾの隙間ができる。

struct A &#123;
  virtual void funcA() &#123;&#125;
&#125;;
struct B : virtual A &#123;
  B() &#123;&#125;
  virtual void funcA() &#123;&#125;
&#125;;

構造体Bのレイアウト
 0+-----+
  |vbptr|
 4+-----+
  |  0  | ← ?????
 8+-----+
  |vfptr|
12+-----+
</div>
<br/>
Bのコンストラクタを書かなかったり、B::funcA()を書かなかったりすると隙間はなくなる。<br/>
Bにメンバ変数を追加すると、その分のサイズが伸びるので、単純にパディングというわけでは無さそう。<br/>
謎である。（VC++7, VC++9で確認）
]]></content:encoded>
    <dc:subject>C, C++</dc:subject>
    <dc:date>2008-11-28T11:47:01+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=106">
    <link>http://hikarukaru.jugem.cc/?eid=106</link>
    <title>_mm_malloc</title>
    <description>_aligned_malloc

&amp;lt;malloc.h&amp;gt;
#define _mm_malloc(a, b) _aligned_malloc(a, b)</description>
<content:encoded><![CDATA[
<a href="http://msdn.microsoft.com/ja-jp/library/8z34s9c6(VS.80).aspx" target="_blank">_aligned_malloc</a><br />
<br />
&lt;malloc.h&gt;<br />
#define _mm_malloc(a, b) _aligned_malloc(a, b)
]]></content:encoded>
    <dc:subject>C, C++</dc:subject>
    <dc:date>2008-10-15T13:17:04+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=102">
    <link>http://hikarukaru.jugem.cc/?eid=102</link>
    <title>redirect</title>
    <description>
function redirect(command, outputFilename) &amp;#123;
  var exec = shell.Exec(command);
  var outputFile = fso.CreateTextFile(outputFilename, true);
  while (!exec.StdOut.AtEndOfStream) &amp;#123;
    outputFile.WriteLine(exec.StdOut.ReadLine());
  &amp;#12...</description>
<content:encoded><![CDATA[
<div style="white-space: pre;">
function redirect(command, outputFilename) &#123;
  var exec = shell.Exec(command);
  var outputFile = fso.CreateTextFile(outputFilename, true);
  while (!exec.StdOut.AtEndOfStream) &#123;
    outputFile.WriteLine(exec.StdOut.ReadLine());
  &#125;
  outputFile.Close();
&#125;
</div>

]]></content:encoded>
    <dc:subject>WSH, JScript</dc:subject>
    <dc:date>2008-02-06T20:00:51+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=101">
    <link>http://hikarukaru.jugem.cc/?eid=101</link>
    <title>複雑な宣言の読み方</title>
    <description>
1. 識別子を探す。
2. 直近の()があれば&quot;function returning&quot;とする。
3. 直近の[]があれば&quot;array of&quot;とする。
4. 直近の*があれば&quot;pointer to&quot;とする。
5. 直近の&amp;があれば&quot;reference to&quot;とする。
6. 2〜5を最後まで繰り返し、日本語へ翻訳する。（右から訳してい...</description>
<content:encoded><![CDATA[
<div style="white-space: pre;">
1. 識別子を探す。
2. 直近の()があれば"function returning"とする。
3. 直近の[]があれば"array of"とする。
4. 直近の*があれば"pointer to"とする。
5. 直近の&があれば"reference to"とする。
6. 2〜5を最後まで繰り返し、日本語へ翻訳する。（右から訳していく）
# constは無視
# 関数の引数は無視

int* X[10];
  array of pointer to int
  intへのポインタの配列

int (&X())[10];
  function returning reference to array of int
  intの配列への参照を返す関数

int (*X[10])();
  array of pointer to function returning int
  intを返す関数へのポインタの配列

(参照: K&E 第2版 5.12 複雑な宣言)
</div>
]]></content:encoded>
    <dc:subject>C, C++</dc:subject>
    <dc:date>2007-10-31T10:31:13+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=100">
    <link>http://hikarukaru.jugem.cc/?eid=100</link>
    <title>多次元配列の全要素を積算する</title>
    <description>#include &amp;lt;numeric&amp;gt;

template&amp;lt;class Ty&amp;gt; struct sum_t
&amp;#123;
  typedef Ty type;
&amp;#125;;
template&amp;lt;class Ty, size_t N&amp;gt; struct sum_t&amp;lt;Ty[N]&amp;gt; // 部分特殊化
&amp;#123;
  typedef typename sum_t&amp;lt;Ty&amp;gt;::type type;
&amp;#125;;
templat...</description>
<content:encoded><![CDATA[
<div style="white-space: pre;">#include &lt;numeric&gt;

<strong>template&lt;class Ty&gt; struct sum_t</strong>
&#123;
  typedef Ty type;
&#125;;
<strong>template&lt;class Ty, size_t N&gt; struct sum_t&lt;Ty[N]&gt;</strong> // 部分特殊化
&#123;
  typedef typename sum_t&lt;Ty&gt;::type type;
&#125;;
<strong>template&lt;class Ty, size_t N&gt;
  typename sum_t&lt;Ty&gt;::type sum(Ty (&amp;arr)[N])</strong>
&#123;
  typedef typename sum_t&lt;Ty&gt;::type Result;
  Result* p = reinterpret_cast&lt;Result*&gt;(arr);
  return std::accumulate(p, p + sizeof(arr) / sizeof(Result), Result());
&#125;

<strong>int main()</strong>
&#123;
  double arr[][3][3] = &#123;
    &#123;&#123;11,12,13&#125;,&#123;14,15,16&#125;,&#123;17,18,19&#125;&#125;,
    &#123;&#123;21,22,23&#125;,&#123;24,25,26&#125;,&#123;27,28,29&#125;&#125;,
    &#123;&#123;31,32,33&#125;,&#123;34,35,36&#125;,&#123;37,38,39&#125;&#125;,
  &#125;;
  double ret = sum(arr);
&#125;
</div>

]]></content:encoded>
    <dc:subject>C, C++</dc:subject>
    <dc:date>2007-10-15T18:33:19+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=99">
    <link>http://hikarukaru.jugem.cc/?eid=99</link>
    <title>不完全型のdelete</title>
    <description>不完全型（未定義の型）をdeleteした時の動作は未定義です。

ISO/IEC 14882 5.3.5
If the object being deleted has incomplete class type at the point of deletion and the complete class has a non-trivial destructor or a deallocation function, the behavior...</description>
<content:encoded><![CDATA[
不完全型（未定義の型）をdeleteした時の動作は未定義です。<br />
<br />
ISO/IEC 14882 5.3.5<br />
<blockquote>If the object being deleted has incomplete class type at the point of deletion and the complete class has a non-trivial destructor or a deallocation function, the behavior is undefined.<br />
（削除されるオブジェクトが削除時点で不完全な型であって、その完全クラスが自明でないデストラクタ又は開放関数をもつ場合、その動作は、未定義とする。）</blockquote><br />
struct Hoge;<br />
void func1(Hoge* pHoge)<br />
&#123;<br />
&nbsp;&nbsp;delete pHoge; // Hogeのデストラクタが呼び出されない<br />
&#125;<br />
<br />
<br />
特にauto_ptrでハマりやすいです。<br />
<br />
struct FugaImpl;<br />
struct Fuga<br />
&#123;<br />
&nbsp;&nbsp;auto_ptr&lt;FugaImpl&gt; m_pImpl;<br />
&#125;;<br />
<br />
void func2()<br />
&#123;<br />
&nbsp;&nbsp;Fuga fuga;<br />
&#125; // FugaImplのデストラクタが呼び出されない<br />
<br />
boost::shared_ptrではboost::checked_deleterを使い、リンク時に解決させることでこの問題を回避しています。<br />

]]></content:encoded>
    <dc:subject>C, C++</dc:subject>
    <dc:date>2007-10-11T16:22:10+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=98">
    <link>http://hikarukaru.jugem.cc/?eid=98</link>
    <title>auto_ptr_ref</title>
    <description>auto_ptr_refは、右辺値のauto_ptrをコピーできるようにするための中間型です。

例えば、
auto_ptr&amp;lt;foo&amp;gt; create_foo()
&amp;#123;
  return auto_ptr&amp;lt;foo&amp;gt;(new foo);
&amp;#125;
void func1()
&amp;#123;
  auto_ptr&amp;lt;foo&amp;gt; pfoo = create_foo();
&amp;#125;
...</description>
<content:encoded><![CDATA[
auto_ptr_refは、右辺値のauto_ptrをコピーできるようにするための中間型です。<br />
<br />
例えば、<br />
auto_ptr&lt;foo&gt; create_foo()<br />
&#123;<br />
  return auto_ptr&lt;foo&gt;(new foo);<br />
&#125;<br />
void func1()<br />
&#123;<br />
  auto_ptr&lt;foo&gt; pfoo = create_foo();<br />
&#125;<br />
<br />
func1では、create_fooによって作られる一時オブジェクト（右辺値）をpfooへコピーしますが、auto_ptrには右辺値を受け取れる（const参照を引数に持つ）コピーコンストラクタは定義されていません。<br />
(const auto_ptrにもかかわらず、コピーによって所有権が移動してしまうため）<br />
<br />
しかしauto_ptrには、auto_ptr_refを引数に持つコンストラクタと、auto_ptr_refへの変換演算子が定義されているので、暗黙の型変換によりコピーが可能なわけです。<br />

]]></content:encoded>
    <dc:subject>C, C++</dc:subject>
    <dc:date>2007-10-05T14:34:10+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

  <item rdf:about="http://hikarukaru.jugem.cc/?eid=97">
    <link>http://hikarukaru.jugem.cc/?eid=97</link>
    <title>Visual StudioでFontLinkを有効にする</title>
    <description>Data.blog : MeiryoKe
本命のVisual Studio 2005とEclipseで試してみましたが、こいつらは、
FontLinkが働かず、ConsolasとMSゴシックで表示されてしまいます。
下記を設定することで、Visual Studio 2005でもフォントリンクを有効にすることができました。

C:&amp;yen;...</description>
<content:encoded><![CDATA[
<a href="http://data.blogdns.net/archives/000884.html" target="_blank">Data.blog : MeiryoKe</a><br />
<blockquote>本命のVisual Studio 2005とEclipseで試してみましたが、こいつらは、
FontLinkが働かず、ConsolasとMSゴシックで表示されてしまいます。</blockquote><br />
下記を設定することで、Visual Studio 2005でもフォントリンクを有効にすることができました。
<br />
C:&yen;Documents and Settings&yen;%username%&yen;Application Data&yen;Microsoft&yen;VisualStudio&yen;8.0&yen;VsFontLk.dat<br />
(試していませんが、Visual Studio 2003にも同名のファイルがあるようです）<br />
<br />
0411|MS Gothic|ＭＳ ゴシック<br />
を<br />
0411|MeiryoKe_Gothic<br />
に書き換える。<br />
<br />
<br />
<img src="http://hikarukaru.img.jugem.jp/20070612_376518.png" width="387" height="160" alt="" class="pict" /><br />
上記で紹介されているMeiryoKe_GothicそのままだとConsolasと文字幅が違うので、
調整してやるとより綺麗になります。<br />
]]></content:encoded>
    <dc:subject>Visual C++</dc:subject>
    <dc:date>2007-06-12T09:51:07+09:00</dc:date>
    <dc:creator>hikaru</dc:creator>
    <dc:publisher>JUGEM</dc:publisher>
    <dc:rights>hikaru</dc:rights>
<taxo:topics>
<rdf:Bag>
<rdf:li rdf:resource="http://jugem.jp/contents/theme.php?theme=13" />
</rdf:Bag>
</taxo:topics>
  </item>

</rdf:RDF>