おそらく、.NET開発でデファクトスタンダードに最も近いであろう
C++/CLIについて語ろうぜ!
このスレはC++および.NET Frameworkについて一定以上の知識を持っている人が対象となります。
.NETのクラスライブラリの使い方といった質問は Visual Studioスレにお願いします。
前スレッドはこちら
くだすれC++/CLI(初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1142144110/l1
dat落ち姉妹スレ
C++/CLI part3
http://pc12.2ch.net/test/read.cgi/tech/1206447234/l1
http://pc11.2ch.net/test/read.cgi/tech/1142147319/l1
http://pc8.2ch.net/test/read.cgi/tech/1126450441/l1
managed C++ やろうぜ!! 002
http://pc8.2ch.net/test/read.cgi/tech/1139043535/l1
探検
くだすれC++/CLI(初心者用)part2
■ このスレッドは過去ログ倉庫に格納されています
2010/03/15(月) 09:41:19
589デフォルトの名無しさん
2012/10/25(木) 23:09:06.37 最初はそういう使い方してたけど
最近はp/invokeがあるからC#で別段問題ない
最近はp/invokeがあるからC#で別段問題ない
590デフォルトの名無しさん
2012/10/29(月) 12:21:58.58 最初から/CXの構想で作れなかったのかねえ
591デフォルトの名無しさん
2012/10/29(月) 15:20:01.15 >>588→画面をC#にしたら簡単すぎワロタ→内部もC#にしても速度変わんなかった→もうC#だけでいいや
592デフォルトの名無しさん
2012/10/29(月) 22:32:04.19 既存のC++のライブラリがある場合はC#から呼び出しまくると速度ゲロ重
593デフォルトの名無しさん
2012/10/30(火) 00:03:22.69 C++/CLIから呼んでもC#から呼んでも速度は変わらんよ
C++のライブラリはC#だとラップするのがゲロ面倒だから、その点ではC++/CLIが有利
でも本当に速度を求めるんなら、C++/CLIでもC#でも細かくネイティブコードを呼ばないで
必要なデータをまとめて受け渡しするようにして、
細かいところは全部ネイティブコードで書いてしまうのがいい
C++のライブラリはC#だとラップするのがゲロ面倒だから、その点ではC++/CLIが有利
でも本当に速度を求めるんなら、C++/CLIでもC#でも細かくネイティブコードを呼ばないで
必要なデータをまとめて受け渡しするようにして、
細かいところは全部ネイティブコードで書いてしまうのがいい
594デフォルトの名無しさん
2012/10/30(火) 00:11:42.83 >C++/CLIから呼んでもC#から呼んでも速度は変わらんよ
C++ InteropはP/Invokeより高速だよ
http://msdn.microsoft.com/ja-jp/library/ky8kkddw%28VS.80%29.aspx
他のところは同意。まとまった単位でネイティブに切り出さないと高速化の恩恵は薄い。下手するとC#より遅くなる。
C++ InteropはP/Invokeより高速だよ
http://msdn.microsoft.com/ja-jp/library/ky8kkddw%28VS.80%29.aspx
他のところは同意。まとまった単位でネイティブに切り出さないと高速化の恩恵は薄い。下手するとC#より遅くなる。
595デフォルトの名無しさん
2012/10/30(火) 00:28:06.09 変なマーシャリングしないようにすればC#のDllImportでもそんなに遅くはならないよ
アプリに即した形でまとめてネイティブコードで処理、を突き詰めると
結局C++(not CLI)とC#でいいんだよなあ
アプリに即した形でまとめてネイティブコードで処理、を突き詰めると
結局C++(not CLI)とC#でいいんだよなあ
596デフォルトの名無しさん
2012/10/31(水) 01:02:26.73 C++/CLIはビルドが遅いから糞
597デフォルトの名無しさん
2012/10/31(水) 04:22:13.18 必要に迫られて仕方なく使うもんですし
598デフォルトの名無しさん
2012/10/31(水) 20:11:20.60 マネージドからアンマネージドの処理を制御するのはいいんだけど
アンマネージドからマネージドに通知したい時どうしようか悩む
アンマネージドからマネージドに通知したい時どうしようか悩む
599デフォルトの名無しさん
2012/10/31(水) 21:21:47.37 gcrootで余裕
C#とDllImportだと参照管理がかなり面倒
C#とDllImportだと参照管理がかなり面倒
600デフォルトの名無しさん
2012/11/01(木) 07:39:47.26 C++/CXもここでいいの?
βでもあったし環境依存みたいだが、VS2012 for Windows8で
ターゲットwin32の時に出るコンパイルエラー対策を自分用にメモっとく
インクルードディレクトリに追加 ;$(WindowsSDK_IncludePath);
ライブラリディレクトリに追加 ;$(WindowsSDK_LibraryPath_X86);
βでもあったし環境依存みたいだが、VS2012 for Windows8で
ターゲットwin32の時に出るコンパイルエラー対策を自分用にメモっとく
インクルードディレクトリに追加 ;$(WindowsSDK_IncludePath);
ライブラリディレクトリに追加 ;$(WindowsSDK_LibraryPath_X86);
601デフォルトの名無しさん
2012/11/01(木) 09:24:06.16 >C++/CXもここでいいの?
全然別ものなので違います
全然別ものなので違います
602デフォルトの名無しさん
2012/11/01(木) 10:02:20.29 /CXも/CLIと同様に、GUI作るのに使おうとする勘違い君がたくさん出てくるんだろうな
このスレに溢れるC++/CLIに対するネガティブな意見はほとんど/CXにも当てはまる
このスレに溢れるC++/CLIに対するネガティブな意見はほとんど/CXにも当てはまる
603デフォルトの名無しさん
2012/11/01(木) 12:16:56.17 そう? ストア用アプリ開発をC++でやりたいって人に
思い留まらせるような要素は、C++/CXの環境には無いと思うけど
思い留まらせるような要素は、C++/CXの環境には無いと思うけど
604デフォルトの名無しさん
2012/11/01(木) 13:09:28.96 説明するだけ無駄な気はするけど、
WinMDのおかげでDllImportの手間が消えて、呼び出しコストが減って、C++製のネイティブコードを対象にしたリフレクションすら使えるようになった。
これだけ扱いやすくなってくれると高速化のために部分的に利用するってのも十分いける。
C++ AMPとか面白げな物もあるしね。
(C++やC#製のライブラリがJavaScriptからも簡単に呼び出せるので、UIをHTML5とJSで作る人が増えそう)
C++を使いこなせるならC#覚えるのは簡単。
C++が使えてもWinRT部分は全部0から覚えなおし
GUI作るのに何倍も時間がかかるわりには、同じライブラリ使っているため体感速度に差がない。
それならC#覚えて、重い処理のとこだけC++でやればいい。(HTML5+JSでもいいけど)
この辺の事情からC++/CXもC++/CLIと同様にGUIを作るためのものではないと断言する。
これだけ言われてもC++/CXだけでやりたいって言うなら止めないけど、どこまで行っても茨の道だぞ
WinMDのおかげでDllImportの手間が消えて、呼び出しコストが減って、C++製のネイティブコードを対象にしたリフレクションすら使えるようになった。
これだけ扱いやすくなってくれると高速化のために部分的に利用するってのも十分いける。
C++ AMPとか面白げな物もあるしね。
(C++やC#製のライブラリがJavaScriptからも簡単に呼び出せるので、UIをHTML5とJSで作る人が増えそう)
C++を使いこなせるならC#覚えるのは簡単。
C++が使えてもWinRT部分は全部0から覚えなおし
GUI作るのに何倍も時間がかかるわりには、同じライブラリ使っているため体感速度に差がない。
それならC#覚えて、重い処理のとこだけC++でやればいい。(HTML5+JSでもいいけど)
この辺の事情からC++/CXもC++/CLIと同様にGUIを作るためのものではないと断言する。
これだけ言われてもC++/CXだけでやりたいって言うなら止めないけど、どこまで行っても茨の道だぞ
605デフォルトの名無しさん
2012/11/01(木) 16:58:40.48 GUIはともかくDirectX使う場合はC++/CXになりそうだがXNAないし
606デフォルトの名無しさん
2012/11/01(木) 17:50:29.07 >>604
うーん、説明されても無駄だったなあ
C++/CXのデメリットの部分が抽象的でピンとこないや
WinMDちゅーても既存のネイティブライブラリをC#アプリにマージしようとしたら
結局ラッパークラス書かなきゃならないわけで
C++/CLI時代なら、ラッパークラスの作業量が多くなり過ぎるくらいなら
インターフェイスの粒度を洗いなおしてもうDllImportにしちまえよってことになるけど
C++/CXはそのまま全部に使うっ選択肢もありだとおもうけどね
うーん、説明されても無駄だったなあ
C++/CXのデメリットの部分が抽象的でピンとこないや
WinMDちゅーても既存のネイティブライブラリをC#アプリにマージしようとしたら
結局ラッパークラス書かなきゃならないわけで
C++/CLI時代なら、ラッパークラスの作業量が多くなり過ぎるくらいなら
インターフェイスの粒度を洗いなおしてもうDllImportにしちまえよってことになるけど
C++/CXはそのまま全部に使うっ選択肢もありだとおもうけどね
607デフォルトの名無しさん
2012/11/01(木) 18:03:13.80 >>605
DirectXはCX拡張使わずに普通のC++で使えるからC++/CX関係ない
設定画面などで少しだけOSネイティブのUIを使いたいときだけほんのちょっとCX使うくらいだろ
>>604
考え方が逆だと思う
これまでの.NETでは、C#からDllImportでC++を呼び出すのは簡単でもその逆は難しい
だからそこを補助するのにC++/CLIは有効
WinRTでは、C++からCXを使ってC#やWinJSで書かれたコンポーネントを呼び出す
ということが簡単に行えるから、既存のC++コードを他言語から
呼び出すためのラッパーなんて書かなくていいの
新規に作ったC#やJSのコンポーネントをC++から呼び出せばいい
DirectXはCX拡張使わずに普通のC++で使えるからC++/CX関係ない
設定画面などで少しだけOSネイティブのUIを使いたいときだけほんのちょっとCX使うくらいだろ
>>604
考え方が逆だと思う
これまでの.NETでは、C#からDllImportでC++を呼び出すのは簡単でもその逆は難しい
だからそこを補助するのにC++/CLIは有効
WinRTでは、C++からCXを使ってC#やWinJSで書かれたコンポーネントを呼び出す
ということが簡単に行えるから、既存のC++コードを他言語から
呼び出すためのラッパーなんて書かなくていいの
新規に作ったC#やJSのコンポーネントをC++から呼び出せばいい
608デフォルトの名無しさん
2012/11/01(木) 18:16:29.83 まぁ、どっちの使い方も出来るんだから好きなようにやりゃいいさ
609デフォルトの名無しさん
2012/11/01(木) 18:37:36.69 むしろC++/CXで呼び出せるデスクトップ用GUIライブラリが欲しかった…
C++/CLIはcli上にネイティブ用マーシャリングコードの生成だったけど
C++/CXはネイティブ上にCOM/WinRT用マーシャリングコードの生成なんんだよね確か
つまりObjCのパk(ry
C++/CLIはcli上にネイティブ用マーシャリングコードの生成だったけど
C++/CXはネイティブ上にCOM/WinRT用マーシャリングコードの生成なんんだよね確か
つまりObjCのパk(ry
610デフォルトの名無しさん
2012/11/01(木) 18:53:57.94 パコパコ
611デフォルトの名無しさん
2012/11/01(木) 21:43:12.40 問題はMSが途中で放り投げないのはどれかということだよ
612デフォルトの名無しさん
2012/11/01(木) 21:57:19.02 C++資産の活用という目的があるから/CLIも/CXも無くなることはないだろうけど
/CXも/CLIみたいにIDEサポートがなおざりになっていく可能性が高いな
/CLIも誕生当初は.NET開発の本命とか言われてたんだし
/CXも/CLIみたいにIDEサポートがなおざりになっていく可能性が高いな
/CLIも誕生当初は.NET開発の本命とか言われてたんだし
613デフォルトの名無しさん
2012/11/01(木) 22:01:57.86 全部放り投げて新たな言語開発したりしてw
614デフォルトの名無しさん
2012/11/01(木) 22:12:33.37 MSって実験的な技術でも最初から気合入れてしっかり使えるものを出してくるから厄介なんだよね
新技術出してすぐ放り投げるのはGoogleのほうがよっぽど酷いけど
あっちは一目見て「ああこれダメだわ」とわかるからな
新技術出してすぐ放り投げるのはGoogleのほうがよっぽど酷いけど
あっちは一目見て「ああこれダメだわ」とわかるからな
615デフォルトの名無しさん
2012/11/18(日) 18:32:24.63 hackとproductの文化的な違いでしょ
MSのは、OSSのフリーライダーに仕方なく合わせてきた感がタップリ
過去の因縁からしてMSの製品は使わないといった派閥は今日でも現存する
MSのは、OSSのフリーライダーに仕方なく合わせてきた感がタップリ
過去の因縁からしてMSの製品は使わないといった派閥は今日でも現存する
616デフォルトの名無しさん
2012/11/23(金) 09:55:41.06 共産主義の理想はOSSのみが実現できる
617デフォルトの名無しさん
2012/11/23(金) 09:57:46.75 OSSと共産主義が関連あるのは本当?FSFじゃなくて?
>>617
共産主義の定義による、スターリン以前か以後かどっち?
共産主義の定義による、スターリン以前か以後かどっち?
619デフォルトの名無しさん
2012/11/23(金) 18:05:53.27 C++で作られた.LIBなファイルをC++/CLIから呼び出すには何か注意点ありまか?
いま、ビルドはできるけどランタイムの初期化?で落ちてしまいます
いま、ビルドはできるけどランタイムの初期化?で落ちてしまいます
620デフォルトの名無しさん
2012/11/23(金) 23:14:32.20 visual studio でc++ やってるけど
#include "stdafx.h"
#include "stdio.h"
#using <System.Dll>
#using <System.Data.Dll>
#using <System.Xml.Dll>
#include <string>
using namespace System;
using namespace System::Data;
using namespace System::Xml;
using namespace System::Collections;
using namespace System::Data::SqlClient;
int main(void)
{
String^ str;
String^ str200;
char* comp[100] ;
SqlConnection^ Conn = gcnew SqlConnection("Password=apple;User ID=sa;Initial Catalog=master200;Data Source=.\\sql2031");
Conn->Open();
int t;
str = "Select * FROM Customers";
SqlCommand^ sqlCmd = gcnew SqlCommand(str,Conn);//
SqlDataReader^ dr= sqlCmd->ExecuteReader ();
while( dr->Read() )
{ str200=dr["CompanyName"]->ToString();
comp[t] = (char*)System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi(str200).ToPointer();
こっから 表示ができない。
printf("<TD><input type='text' name='comp' size='30' value='"+comp[t]+"' ></TD>" );
#include "stdafx.h"
#include "stdio.h"
#using <System.Dll>
#using <System.Data.Dll>
#using <System.Xml.Dll>
#include <string>
using namespace System;
using namespace System::Data;
using namespace System::Xml;
using namespace System::Collections;
using namespace System::Data::SqlClient;
int main(void)
{
String^ str;
String^ str200;
char* comp[100] ;
SqlConnection^ Conn = gcnew SqlConnection("Password=apple;User ID=sa;Initial Catalog=master200;Data Source=.\\sql2031");
Conn->Open();
int t;
str = "Select * FROM Customers";
SqlCommand^ sqlCmd = gcnew SqlCommand(str,Conn);//
SqlDataReader^ dr= sqlCmd->ExecuteReader ();
while( dr->Read() )
{ str200=dr["CompanyName"]->ToString();
comp[t] = (char*)System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi(str200).ToPointer();
こっから 表示ができない。
printf("<TD><input type='text' name='comp' size='30' value='"+comp[t]+"' ></TD>" );
621デフォルトの名無しさん
2012/11/23(金) 23:16:25.59 システム ストリング から苦労して
char* 変換できたけど
どうやってstringf できるか教えてほしい。
char* 変換できたけど
どうやってstringf できるか教えてほしい。
622デフォルトの名無しさん
2012/11/24(土) 09:22:28.68 あっさりできました。
printfやめたるだけだった。
Console::Write("<TD><input type='text' name='comp' size='30' style='background: #fafad2; font-weight: bold ;' value='"+dr["CompanyName"]+"' ></TD>" );
ストリング変換とかキャラ変換とか一切不要でした。
printfやめたるだけだった。
Console::Write("<TD><input type='text' name='comp' size='30' style='background: #fafad2; font-weight: bold ;' value='"+dr["CompanyName"]+"' ></TD>" );
ストリング変換とかキャラ変換とか一切不要でした。
623デフォルトの名無しさん
2012/11/24(土) 10:22:23.19 >>622
死ね
死ね
624デフォルトの名無しさん
2012/11/24(土) 11:28:11.23 >>623
なんでそういうこというんですか?
私はあなたが、ガソリンをかぶって、
火をつけて焼身自殺することを望みます。
2ちゃんねる ニュース板+で
焼身自殺した人のニュースみたら、凄い悲しみます。
でも後悔はしないです。
なんでそういうこというんですか?
私はあなたが、ガソリンをかぶって、
火をつけて焼身自殺することを望みます。
2ちゃんねる ニュース板+で
焼身自殺した人のニュースみたら、凄い悲しみます。
でも後悔はしないです。
625デフォルトの名無しさん
2012/11/24(土) 22:00:38.23 内閣府は24日、「外交に関する世論調査」結果を発表した。
中国に「親しみを感じない」と答えた人の割合は2011年の前回調査比9・2ポイント増の80・6%で、
1975年の調査開始以降で最高となった。
韓国に「親しみを感じない」という人も23・7ポイント増の59%と急増し、過去2番目に高い数字となった。
外務省は「尖閣諸島(沖縄県)や竹島(島根県)をめぐる対立が、中国や韓国に対する国民感情の悪化につながった」と分析している。
調査は9月27日〜10月7日にかけ、全国の成人男女3000人を対象に行い、1838人(61・3%)が回答した。
日中関係が「良好だと思わない」との回答は16・5ポイント増の92・8%、
日韓関係が「良好だと思わない」も42・8ポイント増の78・8%に達し、ともに過去最高となった。
中国との関係では、今年9月の尖閣諸島国有化をきっかけに中国各地で反日デモが相次ぎ、
現地の日系企業が焼き打ちや略奪に遭ったことなどが影響したとみられる。
「韓流ブーム」などを通じ近年は良好だった韓国との関係についても、
今年8月の韓国の李明博(イミョンバク)大統領による竹島上陸が「冷や水」を浴びせた格好だ。
http://www.yomiuri.co.jp/national/news/20121124-OYT1T00811.htm?from=ylist
中国に「親しみを感じない」と答えた人の割合は2011年の前回調査比9・2ポイント増の80・6%で、
1975年の調査開始以降で最高となった。
韓国に「親しみを感じない」という人も23・7ポイント増の59%と急増し、過去2番目に高い数字となった。
外務省は「尖閣諸島(沖縄県)や竹島(島根県)をめぐる対立が、中国や韓国に対する国民感情の悪化につながった」と分析している。
調査は9月27日〜10月7日にかけ、全国の成人男女3000人を対象に行い、1838人(61・3%)が回答した。
日中関係が「良好だと思わない」との回答は16・5ポイント増の92・8%、
日韓関係が「良好だと思わない」も42・8ポイント増の78・8%に達し、ともに過去最高となった。
中国との関係では、今年9月の尖閣諸島国有化をきっかけに中国各地で反日デモが相次ぎ、
現地の日系企業が焼き打ちや略奪に遭ったことなどが影響したとみられる。
「韓流ブーム」などを通じ近年は良好だった韓国との関係についても、
今年8月の韓国の李明博(イミョンバク)大統領による竹島上陸が「冷や水」を浴びせた格好だ。
http://www.yomiuri.co.jp/national/news/20121124-OYT1T00811.htm?from=ylist
626デフォルトの名無しさん
2012/11/25(日) 15:24:56.72 C++/CLIのクラスライブラリのプロジェクトが2つ(AとB)あります。
BはAを使うので、Bのプロジェクトの設定でAを参照するようにしています。
Aのビルドは問題なくできますが、Bをビルドすると
LNK2020: 未解決のトークン (06000022) <Aにあるクラスの静的メソッド名>
と言われます。
何か他に設定が必要でしょうか。教えてください。
BはAを使うので、Bのプロジェクトの設定でAを参照するようにしています。
Aのビルドは問題なくできますが、Bをビルドすると
LNK2020: 未解決のトークン (06000022) <Aにあるクラスの静的メソッド名>
と言われます。
何か他に設定が必要でしょうか。教えてください。
627デフォルトの名無しさん
2012/11/25(日) 15:46:03.82 http://msdn.microsoft.com/ja-jp/library/b57tw91b(v=vs.80).aspx
このエラーを解決するには、次のどちらかの操作を実行します。
欠けている関数またはデータを定義します。
欠けている関数またはデータが既に定義されているオブジェクト ファイルあるいはライブラリを取り込みます。
このエラーを解決するには、次のどちらかの操作を実行します。
欠けている関数またはデータを定義します。
欠けている関数またはデータが既に定義されているオブジェクト ファイルあるいはライブラリを取り込みます。
628デフォルトの名無しさん
2012/11/26(月) 22:01:25.29 C++でのオブザーバーパターンの実装例を教えていただけますでしょうか
色々検索したのですが見つかりませんでした
色々検索したのですが見つかりませんでした
629デフォルトの名無しさん
2012/11/26(月) 22:05:15.44 C++/CLIならそんなもん要らん。言語に組み込まれている。
イベントを使え。
イベントを使え。
630デフォルトの名無しさん
2012/11/26(月) 22:10:44.54 オブザーバーパターンの実装が分からんとか
さすがにC++/CLIを使う資格がないと言わざるを得ない
C#かC++からやれ
さすがにC++/CLIを使う資格がないと言わざるを得ない
C#かC++からやれ
631デフォルトの名無しさん
2012/11/26(月) 22:35:48.50 obsecureですね
わかります
わかります
632デフォルトの名無しさん
2012/11/28(水) 21:17:29.45 C++/CLIみたいな方言をやる意味あるのか?
633デフォルトの名無しさん
2012/11/28(水) 22:48:53.31 しがらみってもんがあってな
634デフォルトの名無しさん
2012/11/28(水) 23:56:16.87 2012で..netのウィンドウがある普通のアプリが
作れなくなったのだったか?
作れなくなったのだったか?
635デフォルトの名無しさん
2012/11/28(水) 23:58:00.13 プロジェクトテンプレートが無くなっただけで、WinFormsの項目テンプレートはある
MSとしてはフェードアウトさせたいんだろうな
MSとしてはフェードアウトさせたいんだろうな
636デフォルトの名無しさん
2013/01/27(日) 04:17:32.21 C++/CLI勉強中なんですけど、なんでpropertyで2回以上も型を書かせるのはなんで?
property System::Collections::Generic::IEnumerable<System::String^>^ Kuso
{
System::Collections::Generic::IEnumerable<System::String^>^ get();
void set(System::Collections::Generic::IEnumerable<System::String^>^ value);
}
と書くのは気が狂うんですけど。それぞれの型が異なることってあるの?↓でいいじゃん。
property System::Collections::Generic::IEnumerable<System::String^>^ Kuso
{
auto get();
void set(auto value);
}
てかこのスレ2ヶ月間も書き込みがないってどういうことなの。あっ…(察し
property System::Collections::Generic::IEnumerable<System::String^>^ Kuso
{
System::Collections::Generic::IEnumerable<System::String^>^ get();
void set(System::Collections::Generic::IEnumerable<System::String^>^ value);
}
と書くのは気が狂うんですけど。それぞれの型が異なることってあるの?↓でいいじゃん。
property System::Collections::Generic::IEnumerable<System::String^>^ Kuso
{
auto get();
void set(auto value);
}
てかこのスレ2ヶ月間も書き込みがないってどういうことなの。あっ…(察し
637デフォルトの名無しさん
2013/01/27(日) 09:57:28.12 便利に普通に使う言語じゃねえからなこれ
たかが.NETとネイティブコードを橋渡しする非標準拡張のために
必要以上に言語に手を入れたくなかったんだろ
たかが.NETとネイティブコードを橋渡しする非標準拡張のために
必要以上に言語に手を入れたくなかったんだろ
638デフォルトの名無しさん
2013/01/27(日) 15:02:59.86 printf("%x", data);
すると
出力が
ffffff93
や
ffffff94
などになるdataという名前の変数に対して演算をして
結果をdata2に格納し、
printf("%x", data2);
の出力が必ず
ffffff90
になるようにしたい
(16進数表示した時の下一桁以外は変えず、下一桁だけを必ず0にしたい)のですが、
dataに対してどのような演算を行えばよいでしょうか。
すると
出力が
ffffff93
や
ffffff94
などになるdataという名前の変数に対して演算をして
結果をdata2に格納し、
printf("%x", data2);
の出力が必ず
ffffff90
になるようにしたい
(16進数表示した時の下一桁以外は変えず、下一桁だけを必ず0にしたい)のですが、
dataに対してどのような演算を行えばよいでしょうか。
639デフォルトの名無しさん
2013/01/27(日) 15:40:23.86 >>638
ビット演算でANDする。
ビット演算でANDする。
640デフォルトの名無しさん
2013/01/27(日) 17:35:27.93 >636
typedefという便利な機能があってのう…(しかし名前空間が汚染される)
typedefという便利な機能があってのう…(しかし名前空間が汚染される)
641デフォルトの名無しさん
2013/01/27(日) 17:58:33.08 マクロの出番だよ、マクロの出番
642デフォルトの名無しさん
2013/01/28(月) 15:00:14.29 C++、C#どっちもできて、C++でGUIを簡単に作りたいっていうのには向いてるよね
SDKがC++でもC#どちらでも使えるし、守備範囲が広い
ただその為に変数の型変換とかちょっとめんどくさいこと調べないといけないけど
SDKがC++でもC#どちらでも使えるし、守備範囲が広い
ただその為に変数の型変換とかちょっとめんどくさいこと調べないといけないけど
643デフォルトの名無しさん
2013/01/31(木) 00:50:44.45 酷い釣りだ…C++に見えてその実全く違う言語じゃねぇか。
644デフォルトの名無しさん
2013/01/31(木) 07:09:42.74 顧客が本当に望んでいたもの: デスクトップ向けC++/CX
645デフォルトの名無しさん
2013/01/31(木) 08:33:51.13646デフォルトの名無しさん
2013/02/20(水) 15:07:47.77 //homepage3.nifty.com/ishidate/vcpp10_g8/vcpp10_g8.html
このHPを見て勉強しているんですが
「グローバルに下記を設定しておく。」の範囲ってどこからどこまででしょうか?
このHPを見て勉強しているんですが
「グローバルに下記を設定しておく。」の範囲ってどこからどこまででしょうか?
647デフォルトの名無しさん
2013/02/20(水) 15:11:06.36 htm じゃないか
648デフォルトの名無しさん
2013/02/20(水) 15:15:14.41649デフォルトの名無しさん
2013/02/20(水) 15:26:26.90 staticなんだし適当にやってみりゃよかろう
WIDTHとHEIGHTはどこでもいいしarray部分はclass Form1に入れたら
とりあえず動いたぞ、面白いなこれw
WIDTHとHEIGHTはどこでもいいしarray部分はclass Form1に入れたら
とりあえず動いたぞ、面白いなこれw
650デフォルトの名無しさん
2013/02/20(水) 15:33:46.31 何の役に立つのかな
651デフォルトの名無しさん
2013/02/20(水) 15:34:48.07652デフォルトの名無しさん
2013/02/20(水) 15:38:18.30 エスパー希望ですねわかります
653デフォルトの名無しさん
2013/02/20(水) 15:54:18.59 うまくいかないのは実行時なのかコンパイル時なのか
うまくいかないと判断したのはどこ?
うまくいかないと判断したのはどこ?
654デフォルトの名無しさん
2013/02/20(水) 17:02:18.31 初心者なので…すいません
実行するとエラー100いくつとかはくんですよね
範囲設定間違ってるのか、何が原因なのかわかんないです。。。
実行するとエラー100いくつとかはくんですよね
範囲設定間違ってるのか、何が原因なのかわかんないです。。。
655デフォルトの名無しさん
2013/02/20(水) 17:07:17.35 100いくつって数かよ
もしそうならコンパイル時だろうし
全角スペース入ったままなんだろ
置換で半角に変えとけ
もしそうならコンパイル時だろうし
全角スペース入ったままなんだろ
置換で半角に変えとけ
656デフォルトの名無しさん
2013/02/20(水) 17:26:40.56 全角→半角やってもダメみたいです…
もし成功した方いたらそのプロジェクトファイルうpしていただけませんか?
どなたかお願いしますううう
もし成功した方いたらそのプロジェクトファイルうpしていただけませんか?
どなたかお願いしますううう
657デフォルトの名無しさん
2013/02/20(水) 17:30:18.61 ダメみたいとか、自分の状況を隠し続ける人に言えることは何もない
658デフォルトの名無しさん
2013/04/17(水) 21:57:33.57 等高線グラフを表示させたいのですが、
手段が見つかりません。
3D点(x,y,z)の点(データ)×数万個を線で結びつけて、色付けしたものです。
チャートコントロール(mschar)では等高線をサポートしておらず、実現できません。
System::Windows::Forms::DataVisualization::Charting::Chart
どなたかご教授くださいませ!
[環境]
visual c++ 2008 express
vs2012へ更新検討中
手段が見つかりません。
3D点(x,y,z)の点(データ)×数万個を線で結びつけて、色付けしたものです。
チャートコントロール(mschar)では等高線をサポートしておらず、実現できません。
System::Windows::Forms::DataVisualization::Charting::Chart
どなたかご教授くださいませ!
[環境]
visual c++ 2008 express
vs2012へ更新検討中
659デフォルトの名無しさん
2013/04/17(水) 22:02:56.86 そういうのは可視化ツール使えよ
ParaViewとか
ParaViewとか
660デフォルトの名無しさん
2013/04/17(水) 22:10:53.92 Gnuplotでも使えば一瞬
自分でそういうの書くのは手段が目的化してるバカ
自分でそういうの書くのは手段が目的化してるバカ
661デフォルトの名無しさん
2013/04/17(水) 23:21:24.73 マルチ
662デフォルトの名無しさん
2013/06/01(土) 08:15:06.30 ちょっと教えてください
自分は独学でC/C++,C#と、まぁC系の勉強をして、ソフトも作れるようにもなりました。
で、就職活動してたんですが、年齢のせいで、資格か業務経験が無いとって感じで、どの企業にもスルーされてきました。
で、今、職業訓練学校でJAVA及びAndroidアプリの作製っていうコースにかよってて
さすがに、まぁ、昔、独習JAVAって本でさらっとJAVAを勉強してた部分もあったりでJAVA自体は
勉強するというより(現在は、まだAndroid開発の講義じゃなくてJAVAの講義)今の、講師からも言われたんですが
「〜(自分)さんは、もうJAVAの部分は解かってるだろうから、色々と予習していったら良いですよ。」と言われてる状態です。
さて、ここからが本題ですが、JAVAのソースを見てるとnativeっていう修飾子があって文字通りnativeで作られた
メソッドがあったんです。で、JAVAのVMもどうやらCで書かれてるようなのがソース見てわかりました。
そしてCLIですが、C++で組んだアンマナージドなクラスライブラリ等をC#で使う時ってなんかしらの修飾子
ってあるんですか?一度実験でアンマネージドなC++のクラス作ってマネージド(CLI)なクラスの中にほりこんだら
[そりゃ無理じゃ、ポインタとして宣言しろ!このカスが!]って嘘だけど、まぁ、こんな感じのエラーがでたんです。
C#側でwin32apiを使いったかったらdllのアトリビュート文を書けば良いんですけど
クラスはどうしたら良いんでしょうか。
どなたかこうすれば良いという方法があればご教示ください。
自分は独学でC/C++,C#と、まぁC系の勉強をして、ソフトも作れるようにもなりました。
で、就職活動してたんですが、年齢のせいで、資格か業務経験が無いとって感じで、どの企業にもスルーされてきました。
で、今、職業訓練学校でJAVA及びAndroidアプリの作製っていうコースにかよってて
さすがに、まぁ、昔、独習JAVAって本でさらっとJAVAを勉強してた部分もあったりでJAVA自体は
勉強するというより(現在は、まだAndroid開発の講義じゃなくてJAVAの講義)今の、講師からも言われたんですが
「〜(自分)さんは、もうJAVAの部分は解かってるだろうから、色々と予習していったら良いですよ。」と言われてる状態です。
さて、ここからが本題ですが、JAVAのソースを見てるとnativeっていう修飾子があって文字通りnativeで作られた
メソッドがあったんです。で、JAVAのVMもどうやらCで書かれてるようなのがソース見てわかりました。
そしてCLIですが、C++で組んだアンマナージドなクラスライブラリ等をC#で使う時ってなんかしらの修飾子
ってあるんですか?一度実験でアンマネージドなC++のクラス作ってマネージド(CLI)なクラスの中にほりこんだら
[そりゃ無理じゃ、ポインタとして宣言しろ!このカスが!]って嘘だけど、まぁ、こんな感じのエラーがでたんです。
C#側でwin32apiを使いったかったらdllのアトリビュート文を書けば良いんですけど
クラスはどうしたら良いんでしょうか。
どなたかこうすれば良いという方法があればご教示ください。
663デフォルトの名無しさん
2013/06/01(土) 09:35:33.80 文章にイラン部分が多すぎ。人生相談の板は別にあるぞ
質問は的確に
質問は的確に
664662
2013/06/01(土) 10:22:22.81 >>663
そやね、確かに質問がまとまってなかったは。
要は、普通にC++でクラスを作ります(例えばTestっていうクラス)。
それをC#内で使おうと思っても、無理になります。
で、その仲介役としてCLIを使うとします。
その時にCLIで作ったマネージドなクラス内でTestクラスのインスタンスを生成するには
どうしたら良いですか。という質問です。
そやね、確かに質問がまとまってなかったは。
要は、普通にC++でクラスを作ります(例えばTestっていうクラス)。
それをC#内で使おうと思っても、無理になります。
で、その仲介役としてCLIを使うとします。
その時にCLIで作ったマネージドなクラス内でTestクラスのインスタンスを生成するには
どうしたら良いですか。という質問です。
665デフォルトの名無しさん
2013/06/01(土) 11:56:57.18666デフォルトの名無しさん
2013/06/01(土) 12:11:21.91 gcnew じゃなくて new してポインタを受けるだけじゃうまくいかなかったのか?
ちなみにマネージドとアンマネージドの世界の行ったり来たりはオーバーヘッドすごいから
小さなメソッドをちまちま呼び出すような処理はやめておけ。
ちなみにマネージドとアンマネージドの世界の行ったり来たりはオーバーヘッドすごいから
小さなメソッドをちまちま呼び出すような処理はやめておけ。
667662
2013/06/01(土) 12:13:59.07 >>665
あ、そっか、たしかにCOMコンポーネントは呼べるね。
でも、C#で以前(何年前かは忘れた)Excel呼び出して
C#側で、Excel終了さしたのにプロセス見たら
残ってて、こりゃあかんと思ってExcel呼び出すのは
やめたんだけど、今のVSは、そこらへんもちゃんとしょりしてるのかな
俺がもってるVSって2005なんでね
あ、そっか、たしかにCOMコンポーネントは呼べるね。
でも、C#で以前(何年前かは忘れた)Excel呼び出して
C#側で、Excel終了さしたのにプロセス見たら
残ってて、こりゃあかんと思ってExcel呼び出すのは
やめたんだけど、今のVSは、そこらへんもちゃんとしょりしてるのかな
俺がもってるVSって2005なんでね
668デフォルトの名無しさん
2013/06/01(土) 12:22:18.97 >>667
ぼろいPCならアプリ終了しても暫くプロセス残ってるなんて普通にあると思うが
ぼろいPCならアプリ終了しても暫くプロセス残ってるなんて普通にあると思うが
669デフォルトの名無しさん
2013/06/01(土) 14:37:10.11 COMの場合それとは違って寿命管理の話だな
670デフォルトの名無しさん
2013/06/01(土) 14:39:16.16671デフォルトの名無しさん
2013/06/02(日) 00:02:02.93 こんなかんじかな、Disposableにしてるから
deleteのタイミングが重要なときはDisposeすればよい
ref class M2 {
N1 *n;
public:
M2() { n = new N1; }
~M2() { delete n; }
!M2() { delete n; }
};
deleteのタイミングが重要なときはDisposeすればよい
ref class M2 {
N1 *n;
public:
M2() { n = new N1; }
~M2() { delete n; }
!M2() { delete n; }
};
672デフォルトの名無しさん
2013/06/02(日) 10:25:59.95 CLI用スマポを作る
673デフォルトの名無しさん
2013/06/02(日) 12:55:57.74 >>667
多少スレ違いだけど、それの解決方法はほぼ確立してるんだ。
結局のところ外部プロセスサーバーが終了する前に
Execl.Appicationを何度も生成からそうなるわけで、
はじめからExecl.Appicationをひとつだけ生成しておくか、
WeakReferenceにExecl.Appicationの参照をもって、
参照が消えてれば生成するというロジックにすれば万事解決する。
連続して使うときはExcelのインスタンスが毎回立ち上がらずに
パフォーマンスがいい。
多少スレ違いだけど、それの解決方法はほぼ確立してるんだ。
結局のところ外部プロセスサーバーが終了する前に
Execl.Appicationを何度も生成からそうなるわけで、
はじめからExecl.Appicationをひとつだけ生成しておくか、
WeakReferenceにExecl.Appicationの参照をもって、
参照が消えてれば生成するというロジックにすれば万事解決する。
連続して使うときはExcelのインスタンスが毎回立ち上がらずに
パフォーマンスがいい。
674デフォルトの名無しさん
2013/06/02(日) 13:08:52.90 そうだね
675デフォルトの名無しさん
2013/06/02(日) 14:57:18.85676デフォルトの名無しさん
2013/06/02(日) 15:17:26.36 俺も経験ある
GCされるまで開放されないんだよねあれ
GCされるまで開放されないんだよねあれ
677デフォルトの名無しさん
2013/06/02(日) 19:34:42.29 馬鹿には無理
678デフォルトの名無しさん
2013/06/02(日) 21:35:27.92 ReleaseComObjectは現実的な対処法ではないだろう。
ある程度の規模のコードで、例外時も含めて漏れなく書くとなると
コード量が膨らみすぎる。
ある程度の規模のコードで、例外時も含めて漏れなく書くとなると
コード量が膨らみすぎる。
679デフォルトの名無しさん
2013/06/17(月) 19:39:26.55 .Net Framework 2.0のUdpClientクラスって、recvfromに該当するものってないのかな?
相手のIPアドレスが知りたいんだけども。
同じポートに複数のスレッドがブロードキャストしてて、片側のパケットだけを対象にしたい
のよね。
相手のIPアドレスが知りたいんだけども。
同じポートに複数のスレッドがブロードキャストしてて、片側のパケットだけを対象にしたい
のよね。
680デフォルトの名無しさん
2013/06/17(月) 22:44:18.60 Connectすればいいよ
681679
2013/06/18(火) 12:48:05.81 自己解決した。
ひとまず、EndRecieveの引数にIPEndPoint仕掛けてやればいいっぽ。
そしたらStringで判定できる。
ひとまず、EndRecieveの引数にIPEndPoint仕掛けてやればいいっぽ。
そしたらStringで判定できる。
682デフォルトの名無しさん
2013/06/18(火) 13:06:09.51 >>679
recvfrom の仕様は分からないけど、送信元のアドレスは UdpClient.Receive
の引数で取れるよ。
非同期なら UdpClient.EndReceive の第2引数。
見当違いだったらごめん。
recvfrom の仕様は分からないけど、送信元のアドレスは UdpClient.Receive
の引数で取れるよ。
非同期なら UdpClient.EndReceive の第2引数。
見当違いだったらごめん。
683682
2013/06/18(火) 13:07:11.20 リロード忘れたorz
685デフォルトの名無しさん
2013/06/18(火) 15:44:15.55 リロード忘れたの意味がわからない人か
686デフォルトの名無しさん
2013/06/18(火) 16:31:15.38 わかってるから優しくフォローしたように見えるけど。
世の中難しいね!
世の中難しいね!
687デフォルトの名無しさん
2013/07/03(水) NY:AN:NY.AN 配列初期化時に値も設定したのですが、gcnew array<int>(3){1,2,3};
って書かないとコンパイラさんにはじかれます。
gcnew array<int>(){1,2,3};
みたいな、配列サイズを指定しない初期化方法は無いでしょうか。
って書かないとコンパイラさんにはじかれます。
gcnew array<int>(){1,2,3};
みたいな、配列サイズを指定しない初期化方法は無いでしょうか。
688デフォルトの名無しさん
2013/07/03(水) NY:AN:NY.AN ()書かない
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国・ロシア両軍の爆撃機が東京方面へ向かう「異例のルート」を共同飛行…核も搭載可能、連携して威嚇か ★8 [ぐれ★]
- 【速報】「女芸人No.1決定戦 THE W」9代目女王にニッチェ! 7年ぶり3度目で悲願の優勝 [牛丼★]
- 「おこめ券は米以外の食品も買える。効果的な活用を」 地元で農水相 [山形県] [少考さん★]
- 【芸能】『女芸人No.1決定戦THE W』 粗品が最後にバッサリ「優勝賞金1000万円にしてはレベル低い大会」 [冬月記者★]
- 今年の流行語大賞 『働いて働いて働いてまいります』が受賞で不快感… 過労自殺の遺族らが会見「家族にむち打つような行為だ」 [冬月記者★]
- いじめ後遺症 15年前のトラウマに苦悩する当事者「夢の中に出てくる」「された側は一生ものの傷」 [♪♪♪★]
- 【実況】博衣こよりのえちえちダンガンロンパ6🧪
- 【実況】博衣こよりのえちえちダンガンロンパ5🧪
- 【高市速報】毎日の調査で衆院投票先、自民2.4維新7.2立憲14.5国民6.0公明8.4参政4.8共産21.7れいわ19.3保守1.2社民3.6みらい10.8 [369521721]
- 生きるのしんどくてドカ食い飲酒したいんだが
- 🏡パン🍞つー✌まる👌見え👊😅👊
- 【正論】検察「山上よ、どんな事情があろうと暴力が許されない」 [442080748]
