<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<oembed>
  <author_name>USAGI-WRP</author_name>
  <author_url>https://blog.hatena.ne.jp/USAGI-WRP/</author_url>
  <blog_title>C++ ときどき ごはん、わりとてぃーぶれいく☆</blog_title>
  <blog_url>https://usagi.hatenablog.jp/</blog_url>
  <categories>
    <anon>C#</anon>
    <anon>generics</anon>
    <anon>null</anon>
    <anon>Nullable</anon>
    <anon>class</anon>
    <anon>struct</anon>
    <anon>IConvertible</anon>
    <anon>cast</anon>
    <anon>complex</anon>
  </categories>
  <description>// これはコンパイルできない(´・ω・｀) // object -&gt; T static public T As&lt;T&gt;( object o ) { return o as T; } // as T できるためには T に class 制約が必要。これはコンパイルできるし、期待動作するかもしれない。 // object(class=nullれる何か) -&gt; T static public T As&lt;T&gt;( object o ) where T: class { return o as T; } // これは As&lt;T&gt; が期待動作する。 object a = &quot;Я（やー）&quot;; var aa = …</description>
  <height>190</height>
  <html>&lt;iframe src=&quot;https://hatenablog-parts.com/embed?url=https%3A%2F%2Fusagi.hatenablog.jp%2Fentry%2F2018%2F12%2F26%2F192847&quot; title=&quot;C#: null れる class と null れない struct いずれの可能性もある object を as&amp;lt;T&amp;gt; したい場合の限界、あるいは C# らしい結論 - C++ ときどき ごはん、わりとてぃーぶれいく☆&quot; class=&quot;embed-card embed-blogcard&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;&quot;&gt;&lt;/iframe&gt;</html>
  <image_url></image_url>
  <provider_name>Hatena Blog</provider_name>
  <provider_url>https://hatena.blog</provider_url>
  <published>2018-12-26 19:28:47</published>
  <title>C#: null れる class と null れない struct いずれの可能性もある object を as&lt;T&gt; したい場合の限界、あるいは C# らしい結論</title>
  <type>rich</type>
  <url>https://usagi.hatenablog.jp/entry/2018/12/26/192847</url>
  <version>1.0</version>
  <width>100%</width>
</oembed>
