Note
ãã®ããŒãžã«ã¢ã¯ã»ã¹ããã«ã¯ãæ¿èªãå¿ èŠã§ãã ãµã€ã³ã€ã³ãŸãã¯ãã£ã¬ã¯ããªã®å€æŽã詊ãããšãã§ããŸãã
ãã®ããŒãžã«ã¢ã¯ã»ã¹ããã«ã¯ãæ¿èªãå¿ èŠã§ãã ãã£ã¬ã¯ããªã®å€æŽã詊ãããšãã§ããŸãã
ãã®èšäºã§ã¯ã次ã®ã³ã³ãã€ã©èšºæã«ã€ããŠèª¬æããŸãã
- CS0193: * ãŸã㯠-> æŒç®åããã€ã³ã¿ãŒã«é©çšããå¿ èŠããããŸã
- CS0196: ãã€ã³ã¿ãŒã¯ 1 ã€ã®å€ã§ã®ã¿ã€ã³ããã¯ã¹ãäœæããå¿ èŠããããŸã
- CS0208: ãããŒãžãå ('type') ã®ã¢ãã¬ã¹ãååŸãããããµã€ãºãååŸãããããã€ã³ã¿ãŒã宣èšãããããããšã¯ã§ããŸããã
-
CS0209:
fixedã¹ããŒãã¡ã³ãã§å®£èšãããããŒã«ã«ã®åã¯ãã€ã³ã¿ãŒåã§ããå¿ èŠããããŸã -
CS0210:
fixedãŸãã¯usingã¹ããŒãã¡ã³ã宣èšã§åæååãæå®ããå¿ èŠããããŸã - CS0211: æå®ãããåŒã®ã¢ãã¬ã¹ãååŸã§ããŸãã
-
CS0212:
fixedã¹ããŒãã¡ã³ãåæååå ã®åºå®ãããŠããªãåŒã®ã¢ãã¬ã¹ã®ã¿ãåãåãããšãã§ããŸã -
CS0213:
fixedã¹ããŒãã¡ã³ãã䜿çšããŠãæ¢ã«åºå®ãããåŒã®ã¢ãã¬ã¹ãååŸããããšã¯ã§ããŸãã - CS0214: ãã€ã³ã¿ãŒãšåºå®ãµã€ãº ãããã¡ãŒã¯ãå®å šã§ãªãã³ã³ããã¹ãã§ã®ã¿äœ¿çšã§ããŸã
-
CS0227: å®å
šã§ãªãã³ãŒãã¯ã
/unsafeã䜿çšããŠã³ã³ãã€ã«ããå Žåã«ã®ã¿è¡šç€ºãããå ŽåããããŸã - CS0233: 'identifier' ã«ã¯å®çŸ©æžã¿ã®ãµã€ãºããªããããsizeof ã¯å®å šã§ãªãã³ã³ããã¹ãã§ã®ã¿äœ¿çšã§ããŸã
- CS0242: åé¡ã®æäœã¯ void ãã€ã³ã¿ãŒã§æªå®çŸ©ã§ã
-
CS0244: ãã€ã³ã¿ãŒåã§ '
is' ãš 'as' ã®ã©ã¡ããæå¹ã§ã¯ãããŸãã - CS0254: åºå®ã¹ããŒãã¡ã³ãã®ä»£å ¥åŒã®å³åŽã«ã¯ããã£ã¹ãåŒã䜿çšã§ããŸãã
- CS0459: èªã¿åãå°çšããŒã«ã«å€æ°ã®ã¢ãã¬ã¹ãååŸã§ããŸãã
- CS0821: æé»çã«åæå®ãããããŒã«ã«å€æ°ãåºå®ã§ããŸãã
- CS1641: åºå®ãµã€ãºã®ãããã¡ãŒ ãã£ãŒã«ãã«ã¯ããã£ãŒã«ãåã®åŸã«é åãµã€ãºæå®åãå¿ èŠã§ã
- CS1642: åºå®ãµã€ãºã®ãããã¡ãŒ ãã£ãŒã«ãã¯æ§é äœã®ã¡ã³ããŒã®ã¿ã§ããå ŽåããããŸã
- CS1656: 'variable' 㯠'èªã¿åãå°çšå€æ°å' ã§ããããã'variable' ã«å²ãåœãŠãããšãã§ããŸãã
-
CS1663: åºå®ãµã€ãºãããã¡ãŒã®çš®é¡ã¯ã
boolãbyteãshortãintãlongãcharãsbyteãushortãuintãulongãfloatããŸãã¯doubleã®ããããã§ããå¿ èŠããããŸãã - CS1664: é·ã 'length' ãšå 'type' ã®åºå®ãµã€ãº ãããã¡ãŒã倧ããããŸã
- CS1665: åºå®ãµã€ãº ãããã¡ãŒã®é·ãã 0 ãã倧ããå¿ èŠããããŸã
- CS1666: åºå®ãããŠããªãåŒã«å«ãŸããåºå®ãµã€ãº ãããã¡ãŒã䜿çšããããšã¯ã§ããŸãããfixed ã¹ããŒãã¡ã³ãã䜿çšããŠã¿ãŠãã ããã
- CS1708: åºå®ãµã€ãº ãããã¡ãŒã«ã¯ãããŒã«ã«ãŸãã¯ãã£ãŒã«ããä»ããŠã®ã¿ã¢ã¯ã»ã¹ã§ããŸã
-
CS1716: '
System.Runtime.CompilerServices.FixedBuffer' 屿§ã䜿çšããªãã§ãã ããã代ããã« 'fixed' ãã£ãŒã«ã修食åã䜿çšããŠãã ããã - CS1919: å®å šã§ãªãå 'åå' ããªããžã§ã¯ãã®äœæã§äœ¿çšã§ããŸãã
-
CS4004: å®å
šã§ãªãã³ã³ããã¹ãã§
awaitã§ããŸãã - CS7092: åºå®ãããã¡ãŒã®æ¬¡å 㯠1 ã€ã ãã§ãã
-
CS8372: ããããã£ã« '
System.Runtime.CompilerServices.FixedBuffer' 屿§ã䜿çšããªã - CS8385: æå®ãããåŒãåºå®ã¹ããŒãã¡ã³ãã§äœ¿çšããããšã¯ã§ããŸãã
- CS8500: ãããŒãžãå ('type') ã®ã¢ãã¬ã¹ãååŸãããããµã€ãºãååŸãããããŸãã¯ãã®åãžã®ãã€ã³ã¿ãŒã宣èšãã
- CS8812: > ã¡ãœãã ã°ã«ãŒã 'method' ãé颿°ãã€ã³ã¿ãŒå 'type' ã«å€æã§ããŸããã
- CS9049: åºå®ãã£ãŒã«ãã ref ãã£ãŒã«ãã«ããããšã¯ã§ããŸããã
-
CS9123: '
&' æŒç®åã¯ãéåæã¡ãœããã®ãã©ã¡ãŒã¿ãŒãŸãã¯ããŒã«ã«å€æ°ã§ã¯äœ¿çšããªãã§ãã ããã - CS9360: ãã®æäœã¯å®å šã§ãªãã³ã³ããã¹ãã§ã®ã¿äœ¿çšã§ããŸã
-
CS9361:
stackallocå ã®åæååã®ãªãSkipLocalsInitåŒã¯ãå®å šã§ãªãã³ã³ããã¹ãã§ã®ã¿äœ¿çšã§ããŸã -
CS9362: 'member' 㯠'
unsafe' ãšããŠããŒã¯ãããŠãããããå®å šã§ãªãã³ã³ããã¹ãã§äœ¿çšããå¿ èŠããããŸã - CS9363: 'member' ã¯ããã®ã·ã°ããã£ã«ãã€ã³ã¿ãŒããããããå®å šã§ãªãã³ã³ããã¹ãã§äœ¿çšããå¿ èŠããããŸã
- CS9364: å®å šã§ãªãã¡ã³ã㌠'member' ã¯ãå®å šãªã¡ã³ã㌠'member' ããªãŒããŒã©ã€ãã§ããŸãã
- CS9365: å®å šã§ãªãã¡ã³ã㌠'member' ã¯ãå®å šãªã¡ã³ã㌠'member' ãæé»çã«å®è£ ã§ããŸãã
- CS9366: å®å šã§ãªãã¡ã³ã㌠'member' ã¯ãå®å šãªã¡ã³ã㌠'member' ãå®è£ ã§ããŸãã
-
CS9367:
RequiresUnsafeAttributeã¯ãã®ã·ã³ãã«ã«é©çšã§ããŸããã -
CS9368:
RequiresUnsafeAttributeã¯ãæŽæ°ãããã¡ã¢ãªå®å šèŠåã§ã®ã¿æå¹ã§ãã -
CS9376: 'ãžã§ããªãã¯åãŸãã¯ã¡ãœãã' ã®åãã©ã¡ãŒã¿ãŒ 'type parameter' ã® '
new()' å¶çŽãæºããããã«ã'unsafe' ãšããŠããŒã¯ãããã³ã³ã¹ãã©ã¯ã¿ãŒ 'constructor' ã«å®å šã§ãªãã³ã³ããã¹ããå¿ èŠã§ã -
CS9377: '
unsafe' 修食åã¯ãçŸåšã®ã¡ã¢ãªå®å šèŠåã§ã¯åœ±é¿ãäžããŸããã -
CS9379: ãœãŒã¹ã§ '
RequiresUnsafeAttribute' ã䜿çšããªãã§ãã ããã代ããã« 'unsafe' 修食åã䜿çšããŠãã ããã -
CS9388: '
safe' 修食åãš 'unsafe' 修食åãäžç·ã«äœ¿çšããããšã¯ã§ããŸããã -
CS9389: '
extern' ã¡ã³ããŒã¯ã'unsafe' ãŸã㯠'safe' ãšããŠããŒã¯ããå¿ èŠããããŸãã -
CS9390: äž¡æ¹ã®éšåã¡ã³ããŒå®£èšã '
safe' ãšããŠããŒã¯ããå¿ èŠããããŸãããŸããã©ã¡ãã 'safe' ãšããŠããŒã¯ããããšã¯ã§ããŸãã -
CS9392: æç€ºçãŸãã¯æ¡åŒµã¬ã€ã¢ãŠãã0 以å€ã®ãããã³ã° ãµã€ãºããŸã㯠0 以å€ã®ãµã€ãºã®åã®ãã£ãŒã«ãã¯ã'
unsafe' ãŸã㯠'safe' ãšããŒã¯ããå¿ èŠããããŸãã -
CS9396: ããããã£ãŸãã¯ã€ã³ãã¯ãµãŒ 'property' ãšãã®ã¢ã¯ã»ãµãŒã®äž¡æ¹ã« '
unsafe' 修食åãŸã㯠'safe' 修食åãæå®ã§ããŸããããã®ãã¡ã® 1 ã€ãåé€ããŸãã -
CS9397: ããããã£ãŸãã¯ã€ã³ãã¯ãµãŒ 'property' ã®ãã¹ãŠã®ã¢ã¯ã»ãµãŒã§ãåã '
unsafe' ãŸã㯠'safe' 修食åãæå®ã§ããŸããã代ããã«ããã®ä¿®é£Ÿåãããããã£èªäœã«é 眮ããŸãã -
CS9398: '
fixed' ã¹ããŒãã¡ã³ãã®ã³ã³ããã¹ãã§åŸ æ©ã§ããŸãã - CS9401: unsafe ãŸã㯠safe ã®å®£èšä¿®é£Ÿåã¯ã/unsafe ã§ã³ã³ãã€ã«ããå Žåã«ã®ã¿äœ¿çšã§ããŸãã
ãã€ã³ã¿ãŒæäœãšéåç §
-
CS0193: ãã€ã³ã¿ãŒã«
*æŒç®åãŸãã¯->æŒç®åãé©çšããå¿ èŠããããŸã - CS0196: ãã€ã³ã¿ãŒã¯ 1 ã€ã®å€ã§ã®ã¿ã€ã³ããã¯ã¹ãäœæããå¿ èŠããããŸã
- CS0242: åé¡ã®æäœã¯ void ãã€ã³ã¿ãŒã§æªå®çŸ©ã§ã
ãã€ã³ã¿ãŒæäœãæ£ãã䜿çšããã«ã¯ãéåç §ãã€ã³ããã¯ã¹äœæãç®è¡æŒç®ã®èŠåã«åŸããŸãã 詳现ã«ã€ããŠã¯ãã ãã€ã³ã¿ãŒå ãš é¢æ°ãã€ã³ã¿ãŒããåç §ããŠãã ããã
-
*ãŸãã¯->æŒç®åãããŒã¿ ãã€ã³ã¿ãŒã«ã®ã¿é©çšããŸã (CS0193)ã ãããã®æŒç®åã¯ãéãã€ã³ãåãŸãã¯é¢æ°ãã€ã³ã¿ãŒã§ã¯äœ¿çšããªãã§ãã ããã C/C++ ãšã¯ç°ãªããC# ã§ã¯é¢æ°ãã€ã³ã¿ãŒãéåç §ããããšã¯ã§ããŸããã - å€ã 1 ã€ã ãã®ã€ã³ããã¯ã¹ ãã€ã³ã¿ãŒ (CS0196)ã ãã€ã³ã¿ãŒã¯å€æ¬¡å ã€ã³ããã¯ã¹äœæããµããŒãããŠããŸããã
- void ãã€ã³ã¿ãŒ (CS0242) ã§æªå®çŸ©ã®æäœãé¿ããŸãã ããšãã°ãåç §ãããŠããããŒã¿ã®ãµã€ãºãã³ã³ãã€ã©ã§èªèãããªããããvoid ãã€ã³ã¿ãŒãã€ã³ã¯ãªã¡ã³ãããªãã§ãã ããã
ãã€ã³ã¿ãŒåãšãããŒãžãå
- CS0208: ãããŒãžãå ('type') ã®ã¢ãã¬ã¹ãååŸãããããµã€ãºãååŸãããããã€ã³ã¿ãŒã宣èšãããããããšã¯ã§ããŸããã
- CS0233: 'identifier' ã«ã¯å®çŸ©æžã¿ã®ãµã€ãºããªããããsizeof ã¯å®å šã§ãªãã³ã³ããã¹ãã§ã®ã¿äœ¿çšã§ããŸã
- CS8500: ããã¯ããããŒãžãå ('type') ã®ã¢ãã¬ã¹ãååŸãããããµã€ãºãååŸãããããã®åãžã®ãã€ã³ã¿ãŒã宣èšãããããŠããŸã
ãã€ã³ã¿ãŒãš sizeof æŒç®åãæ£ããæäœããã«ã¯ãã¢ã³ãããŒãžåãšé©åãªã³ã³ããã¹ãã䜿çšããŸãã 詳现ã«ã€ããŠã¯ãã ã¢ã³ãããŒãžå ãš sizeof æŒç®åããåç
§ããŠãã ããã
- ãã€ã³ã¿ãŒã¯ã¢ã³ãããŒãžå (CS0208) ã§ã®ã¿äœ¿çšããŸãã ãããŒãžãåã®ã¢ãã¬ã¹ãååŸãããããµã€ãºãååŸãããããããŒãžãåãžã®ãã€ã³ã¿ãŒã宣èšãããããªãã§ãã ããã ãããŒãžãåã«ã¯ãåç §åã®ãã£ãŒã«ããŸãã¯ããããã£ãå«ãåç §åãšæ§é äœãå«ãŸããŸãã
- ãµã€ãºãã³ã³ãã€ã«æå®æ° (
sizeof) ã§ã¯ãªãåãæäœããå Žåã¯ãunsafeã³ã³ããã¹ãå ã§ æŒç®åã䜿çšããŸãã - ãããŒãžãå (CS8500) ã®ã¢ãã¬ã¹ã®ååŸããµã€ãºã®ååŸããŸãã¯ãã€ã³ã¿ãŒã®å®£èšã¯é¿ããŠãã ããã ãã®èŠå (ã¬ãã« 4) ã¯ãã³ã³ãã€ã©ããããŒãžãåã«å¯Ÿãããã€ã³ã¿ãŒæäœãæ€åºãããšãã«çºçããŸãã ãããŒãžãåã¯ãä»»æã®åç §åããŸãã¯åç §åããã£ãŒã«ããŸãã¯ããããã£ãšããŠå«ãæ§é äœã§ãã 詳现ã«ã€ããŠã¯ãã ã¢ã³ãããŒãžåããåç §ããŠãã ããã
ã¹ããŒãã¡ã³ãã®äœ¿çšãä¿®æ£ããŸãã
- CS0209: åºå®ã¹ããŒãã¡ã³ãã§å®£èšãããããŒã«ã«ã®åã¯ãã€ã³ã¿ãŒåã§ããå¿ èŠããããŸã
-
CS0210: åºå®ãŸãã¯
usingã¹ããŒãã¡ã³ã宣èšã§åæååãæå®ããå¿ èŠããããŸã - CS0211: æå®ãããåŒã®ã¢ãã¬ã¹ãååŸã§ããŸãã
- CS0212: åºå®ã¹ããŒãã¡ã³ãåæååå ã®åºå®ãããŠããªãåŒã®ã¢ãã¬ã¹ã®ã¿ãåãåãããšãã§ããŸã
- CS0213: fixed ã¹ããŒãã¡ã³ãã䜿çšããŠãæ¢ã«åºå®ãããåŒã®ã¢ãã¬ã¹ãååŸããããšã¯ã§ããŸãã
- CS0254: åºå®ã¹ããŒãã¡ã³ãã®ä»£å ¥åŒã®å³åŽã«ã¯ããã£ã¹ãåŒã䜿çšã§ããŸãã
- CS0459: èªã¿åãå°çšããŒã«ã«å€æ°ã®ã¢ãã¬ã¹ãååŸã§ããŸãã
- CS0821: æé»çã«åæå®ãããããŒã«ã«å€æ°ãåºå®ã§ããŸãã
- CS1656: 'variable' 㯠'èªã¿åãå°çšå€æ°å' ã§ããããã'variable' ã«å²ãåœãŠãããšãã§ããŸãã
- CS8385: æå®ãããåŒãåºå®ã¹ããŒãã¡ã³ãã§äœ¿çšããããšã¯ã§ããŸãã
ãããã®ãšã©ãŒã¯ã fixed ã¹ããŒãã¡ã³ã ã誀ã£ãŠäœ¿çšããå Žåã«çºçããŸãã
fixed ã¹ããŒãã¡ã³ãã¯ãã¬ããŒãž ã³ã¬ã¯ã¿ãŒãç§»åå¯èœãªå€æ°ãåé
眮ããã®ãé²ãããã®å€æ°ãžã®ãã€ã³ã¿ãŒã宣èšããŸãã 詳现ã«ã€ããŠã¯ãã å®å
šã§ãªãã³ãŒããšãã€ã³ã¿ãŒããåç
§ããŠãã ããã
fixed ã¹ããŒãã¡ã³ããæ£ãã䜿çšããã«ã¯:
- 倿°ããã€ã³ã¿ãŒåãšããŠå®£èšããŸã (CS0209)ã
-
fixedã¹ããŒãã¡ã³ãå®£èš (CS0210) ã§åæååãæå®ããŸãã - æå¹ãªåŒã®ã¢ãã¬ã¹ã®ã¿ãååŸããŸãããã£ãŒã«ããããŒã«ã«å€æ°ããã€ã³ã¿ãŒéæ¥åç § (CS0211)ã 2 ã€ã®å€æ°ã®åèšã®ãããªèšç®åŒã®ã¢ãã¬ã¹ãååŸããªãã§ãã ããã
-
fixedã¹ããŒãã¡ã³ãåæåå (CS0212) å ã§ã®ã¿ãä¿®æ£ãããŠããªãåŒã«å¯Ÿã㊠address-of æŒç®åã䜿çšããŸãã - æ¢ã«åºå®ãããåŒ (
fixed) ã§ã¯ãã¹ããŒãã¡ã³ãã䜿çšããªãã§ãã ãããunsafeã¡ãœããã®ããŒã«ã«å€æ°ãšãã©ã¡ãŒã¿ãŒã¯ãã¹ã¿ãã¯äžã§æ¢ã«åºå®ãããŠããŸãã -
fixedåºå®ã¹ããŒãã¡ã³ãã®ä»£å ¥åŒã®å³åŽã«ãã£ã¹ãåŒã䜿çšããªãã§ãã ãã (CS0254)ã - èªã¿åãå°çšããŒã«ã«å€æ° (CS0459) ã®ã¢ãã¬ã¹ãååŸããªãã§ãã ããã
foreachã«ãŒããusingã¹ããŒãã¡ã³ããããã³fixedã¹ããŒãã¡ã³ãå ã®å€æ°ã¯èªã¿åãå°çšã§ãã ãã®ãšã©ãŒã¯ãã³ã³ãã€ã©ã®çŸåšã®ããŒãžã§ã³ã§ã¯çæãããªããªããŸããã -
varã¹ããŒãã¡ã³ã (fixed) ã§ã¯ãã®ä»£ããã«æç€ºçãªåã䜿çšããŸãã -
foreachã«ãŒããusingã¹ããŒãã¡ã³ããfixedã¹ããŒãã¡ã³ã (CS1656) ãªã©ã®èªã¿åãå°çšã³ã³ããã¹ãã§ã¯å€æ°ã«å²ãåœãŠãªãã§ãã ããã -
fixedã¹ããŒãã¡ã³ã (CS8385) ã§ã®ãã³çãããµããŒãããåŒã®ã¿ã䜿çšããŸãã åŒã¯ãã¢ãã¬ã¹æå®å¯èœãªå€æ°ãæååããŸãã¯é©åãªGetPinnableReferenceã¡ãœãããå®è£ ããåã§ããå¿ èŠããããŸãã
å®å šã§ãªãã³ã³ããã¹ãã®èŠä»¶
- CS0214: ãã€ã³ã¿ãŒãšåºå®ãµã€ãº ãããã¡ãŒã¯ãå®å šã§ãªãã³ã³ããã¹ãã§ã®ã¿äœ¿çšã§ããŸã
- CS0227: ã¢ã³ã»ãŒã ã³ãŒãã¯ã/unsafe ã䜿çšããŠã³ã³ãã€ã«ããå Žåã«ã®ã¿è¡šç€ºãããå ŽåããããŸã
-
CS0244: ãã€ã³ã¿ãŒåã§ '
is' ã 'as' ãæå¹ã§ã¯ãããŸãã - CS1919: å®å šã§ãªãå 'åå' ããªããžã§ã¯ãã®äœæã§äœ¿çšã§ããŸãã
-
CS4004: å®å
šã§ãªãã³ã³ããã¹ãã§
awaitã§ããŸãã -
CS9123: '
&' æŒç®åã¯ãéåæã¡ãœããã®ãã©ã¡ãŒã¿ãŒãŸãã¯ããŒã«ã«å€æ°ã§ã¯äœ¿çšããªãã§ãã ãã - CS9360: ãã®æäœã¯å®å šã§ãªãã³ã³ããã¹ãã§ã®ã¿äœ¿çšã§ããŸã
-
CS9361:
stackallocå ã®åæååã®ãªãSkipLocalsInitåŒã¯ãå®å šã§ãªãã³ã³ããã¹ãã§ã®ã¿äœ¿çšã§ããŸã -
CS9362: 'member' 㯠'
unsafe' ãšããŠããŒã¯ãããŠãããããå®å šã§ãªãã³ã³ããã¹ãã§äœ¿çšããå¿ èŠããããŸã - CS9363: 'member' ã¯ããã®ã·ã°ããã£ã«ãã€ã³ã¿ãŒããããããå®å šã§ãªãã³ã³ããã¹ãã§äœ¿çšããå¿ èŠããããŸã
-
CS9376: 'ãžã§ããªãã¯åãŸãã¯ã¡ãœãã' ã®åãã©ã¡ãŒã¿ãŒ 'type parameter' ã® '
unsafe' å¶çŽãæºããã«ã¯ã'new()' ãšããŠããŒã¯ãããã³ã³ã¹ãã©ã¯ã¿ãŒ 'constructor' ã«ã¯å®å šã§ãªãã³ã³ããã¹ããå¿ èŠã§ã -
CS9398: '
fixed' ã¹ããŒãã¡ã³ãã®ã³ã³ããã¹ãã§åŸ æ©ã§ããŸãã - CS9401: å®å šã§ãªã宣èšä¿®é£ŸåãŸãã¯å®å šãªå®£èšä¿®é£Ÿåã¯ã/unsafe ã§ã³ã³ãã€ã«ããå Žåã«ã®ã¿äœ¿çšã§ããŸãã
ãããã®èšºæã¯ãå¿
èŠãª unsafe ã³ã³ããã¹ããªãã§å®å
šã§ãªãã³ãŒã ã³ã³ã¹ãã©ã¯ãã䜿çšããå ŽåããŸãã¯å®å
šã§ãªãåã§èš±å¯ãããŠããªãæäœã詊ã¿ãå Žåã«çºçããŸãã 詳现ã«ã€ããŠã¯ããå®å
šã§ãªãã³ãŒããšãã€ã³ã¿ãŒãããã³ãunsafe ããŒã¯ãŒãããåç
§ããŠãã ããã
- ãã€ã³ã¿ãŒãŸãã¯åºå®ãµã€ãºãããã¡ãŒã䜿çšããã¡ãœãããåããŸãã¯ã³ãŒã ãããã¯ãã
unsafeããŒã¯ãŒã (CS0214) ã§ããŒã¯ããŸãã ã³ã³ãã€ã©ã§ã¯ããã€ã³ã¿ãŒåãŸãã¯åºå®ãµã€ãºã®ãããã¡ãŒ ãã£ãŒã«ãã§åäœããã³ãŒãã«å¯ŸããŠãæç€ºçãªå®å šã§ãªãã³ã³ããã¹ããå¿ èŠã§ãã - ãããžã§ã¯ãèšå® (CS0227) ã§ AllowUnsafeBlocks ã³ã³ãã€ã© ãªãã·ã§ã³ãæå¹ã«ããŸãã ãã®ãªãã·ã§ã³ãæå®ããªããšãã³ãŒããæ£ããå Žåã§ããã³ã³ãã€ã©ã¯ãã¹ãŠã®
unsafeãããã¯ãæåŠããŸãã -
AllowUnsafeBlocks ã
unsafeããã³safe宣èšä¿®é£Ÿå (CS9401) ã«å¯ŸããŠæå¹ã«ããŸãã 宣èšã®æ¬æã«å®å šã§ãªãæäœãå«ãŸããŠããªãå ŽåããæŽæ°ãããã¡ã¢ãªå®å šèŠåãæå¹ã«ããŠããªãå Žåã§ãããããžã§ã¯ã ãã¡ã€ã«ã«<AllowUnsafeBlocks>true</AllowUnsafeBlocks>ãèšå®ããŠãã ããã CS0227 ãçæããunsafeãããã¯ã«å¯ŸããŠãåããªãã·ã§ã³ãæå¹ã«ããŸãã - ãã€ã³ã¿ãŒå (
is) ã§asæŒç®åãŸãã¯æŒç®åã䜿çšããªãã§ãã ããã ãã€ã³ã¿ãŒã¯åéå±€ã«å«ãŸããŠããªãããããããã®åãã¹ãæŒç®åã¯ãã€ã³ã¿ãŒã«å¯ŸããŠæå¹ã§ã¯ãããŸããã - ãã€ã³ã¿ãŒåã€ã³ã¹ã¿ã³ã¹ (
new) ãäœæããã«ã¯ãæŒç®åã䜿çšããªãã§ãã ããã ã¢ã³ãããŒãž ã¡ã¢ãªã«ãªããžã§ã¯ããäœæããã«ã¯ãçžäºéçšæ©èœã䜿çšããŠããã€ã³ã¿ãŒãè¿ããã€ãã£ã ã¡ãœãããåŒã³åºããŸãã -
CS4004 ãåŸæ¥ã®ã¬ã€ãã³ã¹ãšããŠæ±ããŸãã C# 14 以åã§ã¯ãå®å
šã§ãªãã³ã³ããã¹ãå
ã®
awaitã¯èš±å¯ãããŠããŸããã C# 15 ãã¬ãã¥ãŒã®ã¡ã¢ãªå®å šæ§ã®å€æŽã§ã¯ãawaitã¯å®å šã§ãªãã³ã³ããã¹ãã§èš±å¯ãããããããã®äžæ¬å¶éã§ã¯çŸåšã®èŠåã¯èª¬æãããªããªããŸããã - éåæã¡ãœãã (
&) ã®ãã©ã¡ãŒã¿ãŒãŸãã¯ããŒã«ã«å€æ°ã«å¯Ÿã㊠address-of æŒç®å () ã䜿çšããªãã§ãã ããã äžæãã€ã³ãã®åŸã«éåææäœãåéããããšãã¹ã¿ãã¯ã«å€æ°ãååšããªãå¯èœæ§ããããŸãã - unsafe æ§æ (ãã€ã³ã¿ã®ããªãã¡ã¬ã³ã¹ãã¢ãã¬ã¹ååŸããŸãã¯é管çåã®
sizeofãªã©) ãå«ãæäœã¯ãunsafeããŒã¯ãŒãã§ããŒã¯ããŸã (CS9360)ã C# 15 ã®æŽæ°ãããã¡ã¢ãªå®å šèŠåã§ã¯ãã³ã³ãã€ã©ã¯å®å šã§ãªãã³ã³ããã¹ããå¿ èŠãšããåã ã®æäœãèå¥ããŸãã -
unsafe屿§ãé©çšãããŠããå Žåã¯ãåæååã䜿çšããªãstackallocåŒã«å¯ŸããŠSkipLocalsInitããŒã¯ãŒãã䜿çšããŸã (CS9361)ã åæååããªãå Žåãã¹ã¿ãã¯å²ãåœãŠã¡ã¢ãªã«ã¯åæåãããŠããªãããŒã¿ãå«ãŸããŸããããã¯å®å šã§ãªãæäœã§ãã -
unsafe(CS9362) ãšããŒã¯ãããã¡ã³ããŒãåŒã³åºããšãããŸãã¯ã·ã°ããã£ã«ãã€ã³ã¿ãŒãæã€ã¡ã³ã㌠(CS9363) ãåŒã³åºããšãã¯ãunsafeã³ã³ããã¹ãã䜿çšããŸãã æŽæ°ãããã¡ã¢ãªå®å šã¢ãã«ã§ã¯ãã³ã³ãã€ã©ã¯ã眲åèªäœã«ãã€ã³ã¿ãŒãå«ãŸããŠããåŸæ¥ã®äºææ§ã±ãŒã¹ã§ã¯ãåŒã³åºãå ã«å®å šçŸ©åãæç€ºçã«äŒéããã¡ã³ããŒã«ã€ã㊠CS9362 ãå ±åããŸãã - ååŒæ°ã®åŒæ°ãªãã³ã³ã¹ãã©ã¯ã¿ãŒã
unsafe(CS9376) ã§ããŒã¯ãããŠããå Žåããžã§ããªãã¯åãŸãã¯ã¡ãœããã®ã€ã³ã¹ã¿ã³ã¹åã§ã¯unsafeã³ã³ããã¹ãã䜿çšããŸãã 䜿çšãµã€ãã«ã³ã³ã¹ãã©ã¯ã¿ãŒåŒã³åºãã衚瀺ãããªãå Žåã§ããnew()å¶çŽãšstructå¶çŽã®äž¡æ¹ã«ãã®ä¿®æ£ãé©çšããŸãã æ¡åŒµãããã¯ãšãžã§ããªãã¯æ¡åŒµã¡ãœããã®ååŒæ°ã確èªããŸãã -
awaitãfixedã¹ããŒãã¡ã³ã (CS9398) ã®æ¬äœãŸãã¯åæååã®å€åŽã«ç§»åããŠãã ããã C# 15 ãã¬ãã¥ãŒã§ã¯ãå®å šã§ãªãã³ã³ããã¹ãã§awaitã§ããŸãããfixedã¹ããŒãã¡ã³ãã®ãã³çãæå¹æéã¯éåæã®äžæãã€ã³ãã«ãŸãããããšã¯ã§ããŸãããfixedã«å ¥ãåã«æäœãåŸ æ©ããããåŸ æ©ããåã«fixedã¹ããŒãã¡ã³ããçµäºããŸãã
åŒå
ã§ CS9376 ãçºçããå Žåã¯ããžã§ããªã㯠ã¡ãœããåŒã³åºãããžã§ããªã㯠ãªããžã§ã¯ãäœæããŸãã¯æ¡åŒµã¡ã³ã㌠ã¢ã¯ã»ã¹ã unsafe ãããã¯å
ã«é
眮ããŸãã ãžã§ããªãã¯åºæ¬åããã£ãŒã«ãåããŸã㯠using ãšã€ãªã¢ã¹ã®å Žåã¯ã宣èšèªäœãä¿®æ£ããŠãã ãããåŸã§äœ¿çšããç®æãã©ããããããunsafe ã¡ã³ã㌠ã¬ãã«ã®ä¿®é£Ÿåã«äŸåãããããªãã§ãã ãããããã¯ãå®å
šã§ãªãã³ã³ããã¹ãã確ç«ããã®ã§ã¯ãªããåŒã³åºãå
ã«çŸ©åã課ããŸãã å¿
èŠãªã³ã³ããã¹ããæäŸã§ããªã宣èšã®å Žåã¯ããã©ã¡ãŒã¿ãŒãªãã®å®å
šãªã³ã³ã¹ãã©ã¯ã¿ãŒãæã€åã䜿çšããããããšãã° new() ãèŠæ±ããã®ã§ã¯ãªããã¡ã¯ããªãåãå
¥ããããã«ããžã§ããªã㯠API ãåèšèšããŸãã
å®å šã§ãªãã¡ã³ããŒã®å®å šå¥çŽ
- CS9364: å®å šã§ãªãã¡ã³ã㌠'member' ã¯ãå®å šãªã¡ã³ã㌠'member' ããªãŒããŒã©ã€ãã§ããŸãã
- CS9365: å®å šã§ãªãã¡ã³ã㌠'member' ã¯ãå®å šãªã¡ã³ã㌠'member' ãæé»çã«å®è£ ã§ããŸãã
- CS9366: éã»ãŒããªã¡ã³ããŒãmemberãã¯ãã»ãŒããªã¡ã³ããŒãmemberããå®è£ ã§ããŸãã
-
CS9367:
RequiresUnsafeAttributeã¯ãã®ã·ã³ãã«ã«é©çšã§ããŸããã -
CS9368:
RequiresUnsafeAttributeã¯ãæŽæ°ãããã¡ã¢ãªå®å šèŠåã§ã®ã¿æå¹ã§ãã -
CS9377: '
unsafe' 修食åã¯ãçŸåšã®ã¡ã¢ãªå®å šèŠåã§ã¯åœ±é¿ãåããŸããã -
CS9379: ãœãŒã¹ã§ '
RequiresUnsafeAttribute' ã䜿çšããªãã§ãã ããã代ããã« 'unsafe' 修食åã䜿çšããŠãã ããã -
CS9388: '
safe' 修食åãš 'unsafe' 修食åãäžç·ã«äœ¿çšããããšã¯ã§ããŸããã -
CS9389: '
extern' ã¡ã³ããŒã¯ã'unsafe' ãŸã㯠'safe' ãšããŠããŒã¯ããå¿ èŠããããŸãã -
CS9390: äž¡æ¹ã®éšåã¡ã³ããŒå®£èšã '
safe' ãšããŠããŒã¯ããå¿ èŠããããŸãããŸããã©ã¡ãã 'safe' ãšããŒã¯ããããšã¯ã§ããŸãã -
CS9396: ããããã£ãŸãã¯ã€ã³ãã¯ãµãŒ 'property' ãšãã®ã¢ã¯ã»ãµãŒã®äž¡æ¹ã« '
unsafe' 修食åãŸã㯠'safe' 修食åãæå®ã§ããŸããããã®ãã¡ã® 1 ã€ãåé€ããŸãã -
CS9397: ããããã£ãŸãã¯ã€ã³ãã¯ãµãŒ 'property' ã®ãã¹ãŠã®ã¢ã¯ã»ãµãŒã§ãåã '
unsafe' ãŸã㯠'safe' 修食åãæå®ã§ããŸããã代ããã«ããã®ä¿®é£Ÿåãããããã£èªäœã«é 眮ããŸãã
ãããã®èšºæã§ã¯ãå®å
šã§ãªããšããŒã¯ãããã¡ã³ããŒã«å¯Ÿã㊠C# 15 ã®å®å
šã³ã³ãã©ã¯ãèŠåãé©çšãããŸãã ã³ã³ãã€ã©ã¯ãå®å
šã§ãªãã¡ã³ããŒãåºåºã¯ã©ã¹ãšã€ã³ã¿ãŒãã§ã€ã¹ã«ãã£ãŠç¢ºç«ãããå®å
šæ§ã®æåŸ
ã«éåããªãããã«ããŸãã 詳现ã«ã€ããŠã¯ããå®å
šã§ãªãã³ãŒããšãã€ã³ã¿ãŒãããã³ãunsafe ããŒã¯ãŒãããåç
§ããŠãã ããã
- å®å
šãªåºæ¬ã¡ã³ããŒãéå®å
šãªã¡ã³ã㌠(CS9364) ã§ãªãŒããŒã©ã€ãããŠã¯ãªããŸããã ãªãŒããŒã©ã€ãã¯ãåºåºã¡ã³ããŒã®å®å
šæ§å¥çŽãç¶æããªããã°ãªããŸããã åºæ¬ã¡ã³ããŒãå®å
šãªå Žåã¯ããªãŒããŒã©ã€ããå®å
šã§ããå¿
èŠããããŸãã ãªãŒããŒã©ã€ãããã¡ã³ããŒãã
unsafe修食åãŸãã¯RequiresUnsafeAttributeãåé€ããããåºæ¬ã¡ã³ããŒãå®å šã§ãªããšããŠããŒã¯ããŸãã - å®å šã§ãªãã¡ã³ã㌠(CS9365) ãæã€å®å šãªã€ã³ã¿ãŒãã§ã€ã¹ ã¡ã³ããŒãæé»çã«å®è£ ããªãã§ãã ããã åãã€ã³ã¿ãŒãã§ã€ã¹ ã¡ã³ããŒãæé»çã«å®è£ ããå Žåãã€ã³ã¿ãŒãã§ã€ã¹ãä»ããåŒã³åºãå ã¯å®å šãªæäœãæåŸ ããŸãã å®è£ ããã¡ã³ããŒããå®å šã§ãªãæå®ãåé€ããããæç€ºçãªã€ã³ã¿ãŒãã§ã€ã¹å®è£ ã䜿çšããŸãã
- å®å šã§ãªãã¡ã³ã㌠(CS9366) ãæã€å®å šãªã€ã³ã¿ãŒãã§ã€ã¹ ã¡ã³ããŒãæç€ºçã«å®è£ ããªãã§ãã ããã æç€ºçãªå®è£ ã§ããã€ã³ã¿ãŒãã§ã€ã¹ ã¡ã³ããŒã®å®å šã³ã³ãã©ã¯ããä¿æããå¿ èŠããããŸãã
- ãµããŒããããŠããã·ã³ãã«ã®çš®é¡ (
RequiresUnsafeAttribute) ã«ã®ã¿ãé©çšããŸãã ãã®å±æ§ã¯ãã¡ãœãããããããã£ãã€ãã³ããã³ã³ã¹ãã©ã¯ã¿ãŒãããã³åã«é©çšã§ããŸããããã¹ãŠã®ã·ã³ãã«ã®çš®é¡ã§ãµããŒããããŠããããã§ã¯ãããŸããã -
RequiresUnsafeAttribute(CS9368) ã䜿çšããããã«æŽæ°ãããã¡ã¢ãªå®å šèŠåãæå¹ã«ããŸãã ãã®å±æ§ã¯ C# 15 ã®æŽç·Žãããã¡ã¢ãªå®å šæ§ã¢ãã«ã®äžéšã§ãããã¬ã¬ã· ã«ãŒã«ã§ã¯èªèãããŸããã ãããžã§ã¯ãã§ãæŽæ°ãããã«ãŒã«ããµããŒãããèšèªããŒãžã§ã³ãã¿ãŒã²ããã«ããŠããããšã確èªããŸãã - 广ããªãå Žåã¯ã
unsafe修食åãåé€ããŸã (CS9377)ã çŸåšã®ã¡ã¢ãªå®å šèŠåã§ã¯ãç¹å®ã®ã³ã³ããã¹ãã§ã¯ãunsafe修食åãå¿ èŠãšãããå©ç¹ãåŸãããŸããã äžèŠãªæ³šéãã¯ãªãŒã³ã¢ããã§ããããã«ã修食åãç¡æå³ãªå Žåãã³ã³ãã€ã©ã«ãã£ãŠèŠåã衚瀺ãããŸãã - ãœãŒã¹ (
unsafe) ã§RequiresUnsafeAttributeãé©çšãã代ããã«ãã¡ã³ããŒå®£èšã§çŽæ¥ä¿®é£Ÿåã䜿çšããŸãã ãã®å±æ§ã¯ã¡ã¿ããŒã¿è¡šçŸã®ã¿ã察象ãšããŠããŸãããœãŒã¹ ã³ãŒãã§ã¯ãunsafeããŒã¯ãŒããæ£ããã¡ã«ããºã ã§ãã - äž¡æ¹ã§ã¯ãªãã宣èšã«
safeãŸãã¯unsafeãéžæããŸã (CS9388)ãsafe修食åã¯ããã®å®£èšã requires-unsafe ã§ã¯ãªãããšã瀺ããŸããããã¯externã¡ã³ããŒã«éå®ããããã®ã§ã¯ãããŸããã - ãã¹ãŠã®
externã¡ã³ããŒãunsafeãŸãã¯safe(CS9389) ãšããŠããŒã¯ããŸãã æŽæ°ãããã¡ã¢ãªå®å šèŠåã§ã¯ãã³ã³ãã€ã©ãå®è£ ãæ€èšŒã§ããªããããextern ã¡ã³ããŒã¯å®å šã³ã³ãã©ã¯ããæç€ºçã«å®£èšããå¿ èŠããããŸãã - äž¡æ¹ã®éšåã¡ã³ããŒå®£èšã
safe修食å (CS9390) ã«åæããŠããããšã確èªããŸãã äžæ¹ã®éšå宣èšãsafeããŒã¯ãããŠããå Žåã¯ãäžè²«ããå®å šå¥çŽãç¶æããããã«ãããäžæ¹ã®å®£èšãsafeããŒã¯ããå¿ èŠããããŸãã - ããããã£ãŸãã¯ã€ã³ãã¯ãµãŒããŸãã¯ã¢ã¯ã»ãµãŒã«
unsafeãŸãã¯safeãé 眮ããŸãããäž¡æ¹ã¯é 眮ããŸãã (CS9396)ã ããããã£ããã¹ãŠã®ã¢ã¯ã»ãµãŒã®ã³ã³ãã©ã¯ããèšå®ããå Žåã¯ãããããã£èªäœã«ä¿®é£Ÿåãé 眮ããŸãã ã¢ã¯ã»ãµãŒã 1 ã€ã ãç°ãªãå Žåã¯ããã®ã¢ã¯ã»ãµãŒã«ä¿®é£Ÿåãé 眮ããããããã£ã倿Žããªãã§ãã ããã - ããããã£ãŸãã¯ã€ã³ãã¯ãµãŒã®ãã¹ãŠã®ã¢ã¯ã»ãµãŒã«åã
unsafeãŸãã¯safe修食åãããå Žåã¯ããã®ä¿®é£Ÿåãããããã£ãŸãã¯ã€ã³ãã¯ãµãŒå®£èš (CS9397) ã«ç§»åããŸãã ã¢ã¯ã»ãµãŒä¿®é£Ÿåã¯ãã¢ã¯ã»ãµãŒãæå³çã«ç°ãªãå Žåã«ã®ã¿äœ¿çšããŸãã
çŸå Žã¬ã€ã¢ãŠãã®å®å šæ§
-
CS9392: æç€ºçãŸãã¯æ¡åŒµã¬ã€ã¢ãŠãã0 以å€ã®ãããã³ã° ãµã€ãºããŸã㯠0 以å€ã®ãµã€ãºã®åã®ãã£ãŒã«ãã¯ã'
unsafe' ãŸã㯠'safe' ãšããŒã¯ããå¿ èŠããããŸãã
æŽæ°ãããã¡ã¢ãªã»ãŒãã«ãŒã«ã§ã [StructLayout(LayoutKind.Explicit)] ãŸã㯠[ExtendedLayout] ãæã€åã®ãã¹ãŠã®ã€ã³ã¹ã¿ã³ã¹ãã£ãŒã«ãã safe ãŸã㯠unsafeãšããŠããŒã¯ããŸãã
StructLayoutAttribute ã 0 以å€ã® Pack ãŸã㯠Size ãæå®ããåã®ã€ã³ã¹ã¿ã³ã¹ ãã£ãŒã«ãã«ãLayoutKind.Sequential ãŸã㯠LayoutKind.Auto ã§ãåã修食åãé©çšããŸãã ããšãã°ã [StructLayout(LayoutKind.Sequential, Pack = 1)] ã§ã¯ãã€ã³ã¹ã¿ã³ã¹ ãã£ãŒã«ãããšã«æç€ºçãªå®å
šæ§ã®éžæãå¿
èŠã§ãã
éåžžã®ãã£ãŒã«ã ã¢ã¯ã»ã¹ã§å¿
èŠãªã€ã³ããªã¢ã³ããä¿æãããŠããããšã蚌æã§ããå Žåã¯ã safe ãéžæããŸãã åŒã³åºãå
ããããã®äžå€æ¡ä»¶ãç£æ»ããå¿
èŠãããå Žåã¯ã unsafe ãéžæããŸãã 詳现ã«ã€ããŠã¯ããå®å
šã§ãªãã³ãŒããšãã€ã³ã¿ãŒãããã³ãsafe ããŒã¯ãŒãããåç
§ããŠãã ããã
- èªåããããã£ã§ã¯ã
fieldã䜿çšããããããã£ããŸãã¯ãã£ãŒã«ãã«äŒŒãã€ãã³ãã®å Žåã¯ãåæããããããã³ã° ãã£ãŒã«ããã«ããŒãããã®ããããã£ãŸãã¯ã€ãã³ãèªäœã«ä¿®é£Ÿåãé 眮ããŸãã - ãã£ããã£ããããã©ã€ã㪠ã³ã³ã¹ãã©ã¯ã¿ãŒ ãã©ã¡ãŒã¿ãŒãŸãã¯äœçœ®æå®ã¬ã³ãŒã ã¡ã³ããŒã泚éãªãã®ã¹ãã¬ãŒãžãå°å
¥ããå Žåã¯ãæé»çã¹ãã¬ãŒãžãæç€ºçã«å®£èšãããæ³šéä»ããã£ãŒã«ããŸãã¯ããããã£ã«çœ®ãæããŸãã ãã©ã€ã㪠ã³ã³ã¹ãã©ã¯ã¿ãŒ ãã©ã¡ãŒã¿ãŒã¯ã
safeãŸãã¯unsafeãã£ãŒã«ã修食åãé 眮ããå Žæã§ã¯ãããŸããã - ãã£ãŒã«ããã€ã³ã¹ã¿ã³ã¹ããšã®ã¹ãã¬ãŒãžãå¿ èŠãšããªãå Žåã¯ãéçãã£ãŒã«ããŸãã¯å®æ°ã«å€æŽããŠãšã©ãŒãè§£æ¶ããŸãã ãŸãã¯ããããã³ã° ãã£ãŒã«ãã®ãªãèšç®ããããã£ãŸãã¯ã«ã¹ã¿ã ã€ãã³ãã䜿çšããŸãã
-
PackãšSizeã®å€ãæªæå®ãŸã㯠0 ã®å Žåãããèªäœã§ã¯å±éãããã«ãŒã«ã¯ããªã¬ãŒãããŸããã æç€ºçãŸãã¯æ¡åŒµã¬ã€ã¢ãŠãã§ã¯ããããã®å€ãšã¯å¥ã«æ³šéãå¿ èŠã§ãã - ãããã®ãã§ãã¯ã«ã¯ãæŽæ°ãããã¡ã¢ãªå®å
šèŠåãå¿
èŠã§ãã
LangVersionãpreviewã«èšå®ããã ãã§ã¯ããã®é©çšã¯æå¹ã«ãªããŸããã
åºå®ãµã€ãº ãããã¡ãŒ
- CS1641: åºå®ãµã€ãºã®ãããã¡ãŒ ãã£ãŒã«ãã«ã¯ããã£ãŒã«ãåã®åŸã«é åãµã€ãºæå®åãå¿ èŠã§ã
- CS1642: åºå®ãµã€ãºã®ãããã¡ãŒ ãã£ãŒã«ãã¯æ§é äœã®ã¡ã³ããŒã®ã¿ã§ããå ŽåããããŸã
-
CS1663: åºå®ãµã€ãºãããã¡ãŒã®çš®é¡ã¯ã
boolãbyteãshortãintãlongãcharãsbyteãushortãuintãulongãfloatããŸãã¯doubleã®ããããã§ããå¿ èŠããããŸãã - CS1664: é·ã 'length' ãšå 'type' ã®åºå®ãµã€ãº ãããã¡ãŒã倧ããããŸã
- CS1665: åºå®ãµã€ãº ãããã¡ãŒã®é·ãã 0 ãã倧ããå¿ èŠããããŸã
- CS1666: åºå®ãããŠããªãåŒã«å«ãŸããåºå®ãµã€ãº ãããã¡ãŒã䜿çšããããšã¯ã§ããŸãããfixed ã¹ããŒãã¡ã³ãã䜿çšããŠã¿ãŠãã ããã
- CS1708: åºå®ãµã€ãº ãããã¡ãŒã«ã¯ãããŒã«ã«ãŸãã¯ãã£ãŒã«ããä»ããŠã®ã¿ã¢ã¯ã»ã¹ã§ããŸã
-
CS1716: '
System.Runtime.CompilerServices.FixedBuffer' 屿§ã䜿çšããªãã§ãã ããã代ããã« 'fixed' ãã£ãŒã«ã修食åã䜿çšããŠãã ããã - CS7092: åºå®ãããã¡ãŒã®æ¬¡å 㯠1 ã€ã ãã§ãã
-
CS8372: ããããã£ã« '
System.Runtime.CompilerServices.FixedBuffer' 屿§ã䜿çšããªã - CS9049: åºå®ãã£ãŒã«ãã ref ãã£ãŒã«ãã«ããããšã¯ã§ããŸããã
ãããã®ãšã©ãŒã¯ãåºå®ãµã€ãºã®ãããã¡ãŒãæäœãããšãã«çºçããŸãã åºå®ãµã€ãº ãããã¡ãŒã¯æ§é äœã«çŽæ¥åã蟌ãŸããé åã§ãããäž»ã«çžäºéçšã·ããªãªã«äœ¿çšãããŸãã 詳现ã«ã€ããŠã¯ãã åºå®ãµã€ãºãããã¡ãŒããåç §ããŠãã ããã
åºå®ãµã€ãºãããã¡ãŒãæ£ãã宣èšããŠäœ¿çšããã«ã¯:
- æ£ã®æŽæ°å®æ° (CS1641ãCS1665) ã䜿çšããŠããã£ãŒã«ãåã®åŸã®é åãµã€ãº ãæå®ããŸãã ãããã¡ãŒã®åèšãµã€ãº (èŠçŽ æ°ã«èŠçŽ ãµã€ãºãä¹ç®) ã¯ã2^31 ãã€ã (CS1664) ãè¶ ããŠã¯ãªããŸããã
- åºå®ãµã€ãº ãããã¡ãŒã¯ãã¯ã©ã¹ã§ã¯ãªãæ§é äœã§ã®ã¿å®£èšããŸã (CS1642)ã ã¯ã©ã¹ã«ãã£ãŒã«ããå¿ èŠãªå Žåã¯ãéåžžã®é åã䜿çšããŸãã
- ãµããŒããããŠããèŠçŽ ã®çš®é¡ (
boolãbyteãshortãintãlongãcharãsbyteãushortãuintãulongãfloatããŸãã¯double( CS1663) ã®ããããã䜿çšããŸãã - ãããã¡ãŒ (
fixed) ã«ã¢ã¯ã»ã¹ããåã«ã ã¹ããŒãã¡ã³ãã䜿çšããŠå 嫿§é äœããã³çãããŸãã - åºå®ãµã€ãº ãããã¡ãŒã«ã¯ãäžéåŒ (CS1708) ã§ã¯ãªããããŒã«ã«ãŸãã¯ãã£ãŒã«ãçµç±ã§ã®ã¿ã¢ã¯ã»ã¹ããŸãã
-
fixed屿§ (System.Runtime.CompilerServices.FixedBuffer) ã®ä»£ããã«ã ãã£ãŒã«ã修食åã䜿çšããŸãã ãã®å±æ§ã¯ããããã£ã«ãé©çšããªãã§ãã ãã (CS8372)ã - 1 次å ã®ã¿ã®åºå®ãããã¡ãŒã宣èšããŸã (CS7092)ã 倿¬¡å åºå®ãããã¡ãŒã¯ãµããŒããããŠããŸããã
- åºå®ãµã€ãºã®ãããã¡ãŒã
refãã£ãŒã«ããšããŠå®£èšããªãã§ãã ãã (CS9049)ã åºå®ãµã€ãºãããã¡ãŒã¯å€ãã£ãŒã«ãã§ããå¿ èŠããããŸãã
颿°ãã€ã³ã¿ãŒ
- CS8812: > ã¡ãœãã ã°ã«ãŒã 'method' ãé颿°ãã€ã³ã¿ãŒå 'type' ã«å€æã§ããŸããã
颿°ãã€ã³ã¿ãŒãååŸããã«ã¯ãæç€ºçãªé¢æ°ãã€ã³ã¿ãŒåãã£ã¹ãã§ address-of æŒç®åã䜿çšããŸãã
address-of æŒç®å&ã䜿çšããŠãã¡ãœãã ã°ã«ãŒããvoid*ãŸãã¯ãã®ä»ã®é颿°ãã€ã³ã¿ãŒåã«å²ãåœãŠãªãã§ãã ããã 詳现ã«ã€ããŠã¯ãã 颿°ãã€ã³ã¿ãŒããåç
§ããŠãã ããã