C#とC++
敢えて適材適所に挑戦し、どちらが優れているかを議論します
ファイッ
探検
C#とC++を無理矢理戦わせたい人専用スレ
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2019/11/27(水) 20:03:08.03ID:yc0HWZ1w2019/11/28(木) 23:18:49.00ID:HBU31YUq
>>14
4. 例えば、サーバーなどでは、インタプリタ言語しか許可されて無い事がある。
この場合、そのインタプリタ言語で仮想マシンを作ってしまえば、JavaやC#
の仮想コードを動かすことが出来る。gccのようにバイナリに直す仕様に
していたならば、そもそもこのような環境には対応できなかったことになる。
4. 例えば、サーバーなどでは、インタプリタ言語しか許可されて無い事がある。
この場合、そのインタプリタ言語で仮想マシンを作ってしまえば、JavaやC#
の仮想コードを動かすことが出来る。gccのようにバイナリに直す仕様に
していたならば、そもそもこのような環境には対応できなかったことになる。
2019/11/28(木) 23:32:24.38ID:HBU31YUq
>>15
5. 当時のWin3.1系だと、アプリのバグはOS全体を停止させてしまうことが有った。
このような環境だと native のコードにしてしまうよりも、Javaのように
仮想コードをインタプリタで解釈実行できる機会を与えた方が安全であった。
Win3.1系に限らず、native コードに致命的バグが有った場合に、OSにまで
被害を及ぼさずに安定して停止させるのは、OS開発者に精密な設計を要求する。
それに比べて、仮想コードを解釈実行するなら、致命的バグが有ったら安全に
エラーを出力することは、とても容易に出来る。
サーバーマシンなどの信頼性を要求する環境では、OSにバグがあった場合でも
絶対にOSをダウンさせたくない。そのような目的では仮想コードを解釈実行する
方式は有効である。
5. 当時のWin3.1系だと、アプリのバグはOS全体を停止させてしまうことが有った。
このような環境だと native のコードにしてしまうよりも、Javaのように
仮想コードをインタプリタで解釈実行できる機会を与えた方が安全であった。
Win3.1系に限らず、native コードに致命的バグが有った場合に、OSにまで
被害を及ぼさずに安定して停止させるのは、OS開発者に精密な設計を要求する。
それに比べて、仮想コードを解釈実行するなら、致命的バグが有ったら安全に
エラーを出力することは、とても容易に出来る。
サーバーマシンなどの信頼性を要求する環境では、OSにバグがあった場合でも
絶対にOSをダウンさせたくない。そのような目的では仮想コードを解釈実行する
方式は有効である。
2019/11/29(金) 00:03:04.59ID:LpyfBhuP
>>14
「3」に関して。
Javaの登場時期と外れているが、例えば、iOSアプリは原則、Swiftで書かなければ
ならない。Swift は、native binaryに変換はされるが、OSのAPIの関数呼び出し規則の
仕様が非公開。だから、Swift以外の言語を独自にnative binaryに直した場合、
OSのAPIを呼び出す方法には、Appleの公式なドキュメントが無いので、
独自にリバースエンジニアリングをして対応する必要がある。
native binaryにいきなり直さずに、フロントエンドの処理系がJavaをパースして、
Swift言語に直すのも一つの方法である。
しかし、仮想コードに直す方式なら、このような場合でも対応できる。
仮想マシンをSwiftで書いておけば良いのだから。
「3」に関して。
Javaの登場時期と外れているが、例えば、iOSアプリは原則、Swiftで書かなければ
ならない。Swift は、native binaryに変換はされるが、OSのAPIの関数呼び出し規則の
仕様が非公開。だから、Swift以外の言語を独自にnative binaryに直した場合、
OSのAPIを呼び出す方法には、Appleの公式なドキュメントが無いので、
独自にリバースエンジニアリングをして対応する必要がある。
native binaryにいきなり直さずに、フロントエンドの処理系がJavaをパースして、
Swift言語に直すのも一つの方法である。
しかし、仮想コードに直す方式なら、このような場合でも対応できる。
仮想マシンをSwiftで書いておけば良いのだから。
2019/11/29(金) 00:10:50.59ID:LpyfBhuP
>>17
補足すると、iOSのアプリをC/C++言語で書く方法は、Apple公式では
公開されていないらしい。手短に書けば、C言語からOSのAPIを呼び出す
方法が公式ドキュメントでは分からない。そもそも、OSのAPIがCの関数ではなく、
Swiftの関数として定義されてしまっているのだから。
Windowsを使っていると、C言語やアセンブラからOSのAPIであるところの
Win32 APIを呼び出す方法が厳密にドキュメント化されているのが当たり前になっているが、
少なくとも iOSではそうはなっていないようだ。
当たり前すぎて気づかないが、DOSやWindowsは、native binary重視の環境だったの
かもしれない。実際、Unix系OSは、そもそも binary 互換性は重視しておらず、
同じOSであってもバージョンが変われば再コンパイルして対応するような、
ソースレベル互換の文化である。Windowsはバイナリ互換の文化である。
補足すると、iOSのアプリをC/C++言語で書く方法は、Apple公式では
公開されていないらしい。手短に書けば、C言語からOSのAPIを呼び出す
方法が公式ドキュメントでは分からない。そもそも、OSのAPIがCの関数ではなく、
Swiftの関数として定義されてしまっているのだから。
Windowsを使っていると、C言語やアセンブラからOSのAPIであるところの
Win32 APIを呼び出す方法が厳密にドキュメント化されているのが当たり前になっているが、
少なくとも iOSではそうはなっていないようだ。
当たり前すぎて気づかないが、DOSやWindowsは、native binary重視の環境だったの
かもしれない。実際、Unix系OSは、そもそも binary 互換性は重視しておらず、
同じOSであってもバージョンが変われば再コンパイルして対応するような、
ソースレベル互換の文化である。Windowsはバイナリ互換の文化である。
2019/11/29(金) 08:20:28.82ID:grds9Ww1
2019/12/07(土) 05:37:08.95ID:GAACkWN6
C++はいずれRustに置き換えられるのでは。
2021/05/07(金) 14:25:19.49ID:3nGJ1ama
c++はソースコードにパスワード埋め込んでも解析出来ない?
c#は完全に逆コンパイルできるからソースコードにリテラルでパスワード埋め込んでも隠せないけど
汎用性がーとかは別として
c#は完全に逆コンパイルできるからソースコードにリテラルでパスワード埋め込んでも隠せないけど
汎用性がーとかは別として
22デフォルトの名無しさん
2021/05/07(金) 14:50:20.78ID:m+LBfwtV >>21
ん?C++詳しくないんだけどリテラル文字列を勝手に暗号化してくれるの?
ん?C++詳しくないんだけどリテラル文字列を勝手に暗号化してくれるの?
23デフォルトの名無しさん
2021/05/07(金) 15:16:04.45ID:FlZ9PpDj >>21
そんなわけないだろう
そんなわけないだろう
2021/05/07(金) 16:45:14.90ID:J4cnHdu2
内部で色々演算駆使してその結果がパスワードになるとかでも無い限り結局リテラルがそのままバイナリに現れるから同じ
探しやすさで言えばC#のほうが探しやすいだろうけど、探す気になってる人&探す技術が多少なりともある人から見れば大差は無いかと思う
探しやすさで言えばC#のほうが探しやすいだろうけど、探す気になってる人&探す技術が多少なりともある人から見れば大差は無いかと思う
25デフォルトの名無しさん
2021/05/07(金) 21:11:38.60ID:AC05vLQY ネイティブC と C#(.NET)じゃ速度が違いすぎだろ。
今でもコントロールが描かれる順番が分かるくらい。
今でもコントロールが描かれる順番が分かるくらい。
26デフォルトの名無しさん
2021/05/10(月) 14:48:33.28ID:fxa1gwwl アプリを使うユーザー側から見れば
C#アプリ「まず.NETのなになにバージョンが必要です インストールされていますか?」
C++アプリ「(大抵)そのまま使えます」
この差でC++の圧勝だな
C++でも追加ライブラリが必要なこともあるだろとかいう奴がいるが
C#はその追加ライブラリのほかにさらに.NET環境というバカでかいものが必要とされてる
という大きすぎるハンデを抱えている
C#アプリ「まず.NETのなになにバージョンが必要です インストールされていますか?」
C++アプリ「(大抵)そのまま使えます」
この差でC++の圧勝だな
C++でも追加ライブラリが必要なこともあるだろとかいう奴がいるが
C#はその追加ライブラリのほかにさらに.NET環境というバカでかいものが必要とされてる
という大きすぎるハンデを抱えている
27デフォルトの名無しさん
2021/05/10(月) 15:05:41.77ID:lCZGOQhN2021/05/10(月) 16:20:56.43ID:Q4owJtoM
>>26
WindowsUpdateで.NETの最新版自動でインストールされるじゃん
WindowsUpdateで.NETの最新版自動でインストールされるじゃん
2021/05/10(月) 17:16:19.43ID:ro06Xyvc
>>25
.NET製のアプリは遅いものは本当に極端に遅い。
マザーボードのドライバなどのインストーラーが極端に遅くて困った。
昔は.NET製ではなかったのでこんなこと無かったのに。
35年前に戻ったみたいな遅さ。
.NET製のアプリは遅いものは本当に極端に遅い。
マザーボードのドライバなどのインストーラーが極端に遅くて困った。
昔は.NET製ではなかったのでこんなこと無かったのに。
35年前に戻ったみたいな遅さ。
30デフォルトの名無しさん
2021/05/10(月) 19:40:18.44ID:xlO+yHfD2021/05/11(火) 12:43:48.22ID:BXZYJdJz
遅くないC#アプリもあることは有るようだけど、MS純正のVisual Studio、
Expression Web 4や、PIXELAという会社のStationTVというテレビキャプチャ
ボードのテレビ視聴/番組予約/録画管理ソフト、AsusやGigaByte製のM/B用の
ドライバインストーラはどれも非常に遅かった。
ExpressionWeb 4なんかは、その先祖はもともとC++で書かれたFrontPageだったが
そっちは快適に使えていたのにC#製になったとたん、激遅になってしまって使ってない。
FrontPageは有料だったのになぜか売られなくなってしまい、ExpressionWeb4は無料化した。
無料でも遅すぎて使いたくない。
Expression Web 4や、PIXELAという会社のStationTVというテレビキャプチャ
ボードのテレビ視聴/番組予約/録画管理ソフト、AsusやGigaByte製のM/B用の
ドライバインストーラはどれも非常に遅かった。
ExpressionWeb 4なんかは、その先祖はもともとC++で書かれたFrontPageだったが
そっちは快適に使えていたのにC#製になったとたん、激遅になってしまって使ってない。
FrontPageは有料だったのになぜか売られなくなってしまい、ExpressionWeb4は無料化した。
無料でも遅すぎて使いたくない。
32デフォルトの名無しさん
2021/05/12(水) 09:26:33.63ID:HCx7UYF5 FrontPageなんて使ってたやついたのか
2021/06/08(火) 17:01:48.11ID:bmgoTOXu
2021/06/08(火) 21:55:26.99ID:Oz+Fue89
VC++ランタイムはピンズドのバージョンがないと叱られる
サイドバイサイドができるのとバーター
サイドバイサイドができるのとバーター
2021/06/09(水) 03:26:14.98ID:44YoTMBl
スタティックにリンクすれば不要だし、ダイナミックにリンクすれば必要。選択式。
スタティックが多いかね。
70-250kぐらいファイル大きくなるだけだから。
.NETだとスタティックにリンクすると仕組み上10-30Mになっちまうから...
スタティックが多いかね。
70-250kぐらいファイル大きくなるだけだから。
.NETだとスタティックにリンクすると仕組み上10-30Mになっちまうから...
2021/07/02(金) 08:01:56.39ID:CB17+0MO
c ++はスマートポインタ頑なに使わないやつとかそもそも知らないやつとか多い。
そして落ちる
そして落ちる
2021/11/14(日) 23:10:05.57ID:6FVLDefc
+の差が戦力の差でないことを教えてやる!!
2023/04/02(日) 15:01:06.16ID:rs3fOyhm
価値を見出せない
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国軍機がレーダー照射 小泉防衛大臣の説明に「矛盾している」中国外務省報道官が批判 [♪♪♪★]
- テレビ朝日 本社から男性が転落し死亡。関連会社社員か 当たった通行人が左肩軽傷 [阿弥陀ヶ峰★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- テレビ朝日本社から20~30代の関連会社社員とみられる男性が転落し死亡 六本木けやき坂通りの通行人にはけが人なし [少考さん★]
- 高市早苗首相が天理教系企業に“巨額発注” 総額5000万円 本人は「政治団体の活動に必要な支出」と回答 ★2 [Hitzeschleier★]
- 小島瑠璃子さん、代表取締役を務める会社を破産申請 [牛丼★]
- とくに話題もないのでウンコ盗撮されたJKの動画でもどうですか
- ホロライブの天音かなたと角巻わためが不仲な理由ってなんなん???
- 【悲報】ジャップ、日中戦争に賛成が5割弱...軍歌の音が聞こえる... [856698234]
- 死にたい
- ディルドは神
- 知人の結婚式兼旅行に行くんだが一気に金が飛びそうなんだが
