61 ななしのよっしん
2016/12/21(水) 18:52:21 ID: +iDLBYxE/q
>「実行時エラー」になるのであって「コンパイルエラーにはならない」のが悲劇の始まりだった、という理解で良いのかな。
String html = httpClient.getHtml(url); // アクセスできない場合はnullが返る
int length = html.length();
みたいな条件によってはnullが入るけど宣言されたの範囲内で違反はない、ってコードではコンパイルエラーに「できない」から問題になってる。
nullが入りうるを別途定義し単純なメソッド呼び出し等を禁じる(コンパイルエラーを出す)null安全っていう機構を有する言語が増えつつあるけど、残念ながらjavaはそうじゃない。
👍
高評価
0
👎
低評価
1
62 ななしのよっしん
2016/12/21(水) 22:04:36 ID: Yjs8Al8611
>>60
一言で言うとYes
長く書くと記事や>>61のような内容。
👍
高評価
0
👎
低評価
0
63 Alt
2017/02/27(月) 11:30:45 ID: O2FKU1eBVp
Minecraft(MOD導入)プレイヤーが一番見たくない例外。(これが出た場合プレイヤーには対処の仕様がない)
👍
高評価
0
👎
低評価
0
64 ななしのよっしん
2017/03/18(土) 23:28:12 ID: pXwxgDJrdX
大学のときの担当教官はナルって読んでたわ。

ヌルポバイバイする頃には、Javaに変わる言語が出てきてもおかしくなさそうな…
とは言え、COBOLだってまだ生きてるから、が死ぬまで達成されずに、別の言語に大半は取って代わられ、
それこそCOBOLみたいな立ち位置でゾンビの如く生きてるんじゃないかなと思わんでもないw
👍
高評価
0
👎
低評価
0
65 ななしのよっしん
2017/03/21(火) 16:59:27 ID: Xn8oCH8yek
>>55
ナルは英語での発音であり、語であるドイツ語ではヌルと発音されるからどっちでもいいんじゃないか?
👍
高評価
0
👎
低評価
0
66 ななしのよっしん
2017/04/25(火) 21:12:34 ID: VW84zMDsnh
英語null(ナル)はフランス語のnul(ニュル)が語
ドイツ語null(ヌル)はイタリア語nulla(ヌッラ)が語

イタリア語nullaとフランス語のnulはラテン語nullus(ヌーッルス)が語

元は同じだが経路が違う
👍
高評価
0
👎
低評価
0
67 ななしのよっしん
2017/07/22(土) 01:33:59 ID: eihmoJro3n
optionalの思想ってswift等色んな言語に導入されつつあるけど
あれはあれでめんどくさいっつかなんか気持ち悪いんだよなあ
妥協の産物だってことがミエミエで
👍
高評価
2
👎
低評価
0
68 ななしのよっしん
2017/08/29(火) 23:35:14 ID: wp8cc7VIW7
ずっと思ってたけどC/C++とかやってる身からすればぬるぽエラー出すのって本当にあり得ないと思うの
JavaならException出てVMが止めてくれるけどネイティブじゃ色んなプログラムを巻き込んで破壊していくという
一度も出した事ないとは言わないがもう数年は見てない
👍
高評価
0
👎
低評価
0
69 ななしのよっしん
2018/10/07(日) 00:45:23 ID: Rbnnu2RPGu
ぬるぽOptionalに悩まされてる人はObjective-Cを使えば幸せになれるよ
👍
高評価
0
👎
低評価
0
70 ななしのよっしん
2018/12/28(金) 20:34:08 ID: kIy3b2m9QC
CにはNullPointerExceptionの前にそもそもNULLという概念い(ただのdefine定義)
いくらソースNULLと称したところで要は0なんだから0としての動作をするのは仕方ない
そりゃあポインタ=物理アドレスチープな環境で書き込めばゼロアドレスも壊すし、関数ポインタジャンプすればリセットもかかろうというもの
👍
高評価
0
👎
低評価
0
71 ななしのよっしん
2020/04/11(土) 18:38:58 ID: +U44MTjV2o
defineだろうがなんだろうがNULLNULLやんけw
0でimplementしてるということと、NULLという概念がないことは全く違う。ついでにいえばNULLは処理系定義なので0という保もない。
👍
高評価
0
👎
低評価
0
72 ななしのよっしん
2020/08/19(水) 00:59:46 ID: nIwa/H6hQc
少なくともC++の場合だと「NULLはあくまでも0と言う数値」である事は理解しておくべきではあるけどね。
void MyClass::Func(int *pArg)
void MyClass::Func(int Arg)
と言ったオーバーロードが存在する関数ポインタ変数を渡す方を使っていたとして、もしそのポインタ変数に対して「NULL」をブチ込んだ場合はintの数値を取る方が呼ばれる事になる。
(個人的にはこのようなオーバーロード定義する事そのものがアウトだと思うが。状況次第か・・・?)

C++11以降なら「NULL」ではなく「nullptr」を使えばこういった事故は回避可だが。
👍
高評価
0
👎
低評価
0
73 ななしのよっしん
2020/08/19(水) 11:14:08 ID: r9HOve4fEX
>>67
optionalはflatMaphaskellScalaのようなflatMap用の構文いとまぁ扱い辛い
👍
高評価
0
👎
低評価
0
74 ななしのよっしん
2022/06/20(月) 18:03:15 ID: c9+XxGQqbu
👍
高評価
1
👎
低評価
0
75 ななしのよっしん
2022/07/19(火) 20:00:32 ID: IzgrNpkXIC
英語だと「ナル」かぁ
「ぬる」は語感がいいから日本語として定着して欲しい
vinylだってビニールとして定着したんだし問題ないはず
👍
高評価
1
👎
低評価
0
76 ななしのよっしん
2022/11/25(金) 18:10:04 ID: k9mp0nxhbn
👍
高評価
2
👎
低評価
0

おすすめトレンド

ニコニコニューストピックス