【初心者歓迎】C/C++室 Ver.54【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2008/05/14(水) 01:00:02ただしその場合、質問者は必ず環境を書きましょう。
※sage禁止です(と代々スレに書いてありますが自己判断で)。
【前スレ】
【初心者歓迎】C/C++室 Ver.53【環境依存OK】
http://pc11.2ch.net/test/read.cgi/tech/1208989385/l50
【アップローダー】(質問が長い時はココ使うと便利)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
0002デフォルトの名無しさん
2008/05/14(水) 01:11:50(あるなら)wstringstreamとかwstringを使えって意味ね
0003デフォルトの名無しさん
2008/05/14(水) 01:14:32wstringとwstringstreamだと思い込んでいた。
0004前スレ995
2008/05/14(水) 01:22:30本当にありがとうございました。
int i = 123;
std::wstringstream ss;
ss << i;
std::wstring mes = ss.str();
LPCWSTR omes = (LPCWSTR)mes.c_str();
MessageBoxW(0, omes, L"型変換", MB_OK);
0005デフォルトの名無しさん
2008/05/14(水) 02:21:48キャストでなんとかするってのは、はじめのころは
あんまし感心しないコードになることが多い気がする。
0006デフォルトの名無しさん
2008/05/14(水) 04:09:31◆6月にマネージャパン、月刊アスキー、週刊アスキーの3誌が賞金総額2000万円の「シストレFXグランプリ」を開催
http://system-trading.jp/news/index.php?cID=3
5月22日より登録受付開始、6月2日よりグランプリ開始の予定。賞金総額2000万円。
デモトレードの優勝者には賞金三百万円がプレゼントされます。
▼トレード部門
初期資産500万円で、デモ取引のトレード収益を競っていただきます。
http://www.fx-gp.com/about/
▼賞金総額
■社長特別賞(シストレソフト買取価格) 10,000,000円
●シストレソフト部門賞 1位300万円 2位100万円 3位50万円
●トレード部門賞 1位300万円 2位100万円 3位50万円
●前期MVP賞 50万円
●後期MVP賞 50万円
0007デフォルトの名無しさん
2008/05/14(水) 15:04:43eVC++4.0 にて組み込み開発を行っているのですがどうしても下記のwarningが出てしまいます。
class 'Hogehoge' needs to have dll-interface to be used by clients of class 'Foo'
上記エラーが発生した原因はメンバインスタンス変数を static に変更し、かつ、ポインタ
ではなく実体を持つように修正したからだと思われます。
class Foo
{
public:
Hogehoge *hogehoge;
};
↓
class Foo
{
public:
static Hogehoge hogehoge;
};
warningの意味は何なのか? 原因は何なのか? また、解決方法のご存知の方、回答お願いします。
0008デフォルトの名無しさん
2008/05/14(水) 16:07:44やっぱり自分でチェックした方が無難?
0009デフォルトの名無しさん
2008/05/14(水) 18:20:01そのメッセージの前に警告番号とか出なかった?
あと警告やエラーはそれのみ?
>>8
それぞれの関数の仕様を確認すること。
「など」に対しては定義されてないので。
未定義や不定の条件に書いて無ければ、サイズ0もOK。
ただしサイズが負の数みたいな、
有り得ない値は逆に、何も書いてなければNG。
0010デフォルトの名無しさん
2008/05/14(水) 18:31:03それでももちろんsize_tで表現できる最大値とか明らかにおかしいだろって値は存在するけど。
0011デフォルトの名無しさん
2008/05/14(水) 18:33:43Hogeは具体的に何のクラス?
デフォルトコンストラクタがないとか値として持てないクラスじゃね?
0012デフォルトの名無しさん
2008/05/14(水) 18:34:27ありがとうございます。WG14/N843というのを拾ってきたので読んでみました。
snprintf() についてはサイズ0を指定してもよくて、その場合書き込み先バッファはNULLでもいいみたいです。
strncpy()とmemcpy()ではサイズ0の場合については何も書かれてないので、サイズ0もOKみたいですね。
サイズ0のときにバッファをNULLにしてもいいのかどうかまではちょっとわかりませんでしたが…。
あと、サイズはだいたいsize_tで指定するので負になるという心配はあまりなさそうです。
0013デフォルトの名無しさん
2008/05/14(水) 20:26:17サイズ0のときはNULLにして良いよ。
サイズ0なら、指定したバッファのアドレス自体にもアクセスしてはいけないから、
アクセスしたら関数側のバグになる。
0014デフォルトの名無しさん
2008/05/14(水) 20:55:420015デフォルトの名無しさん
2008/05/14(水) 21:44:07そこから派生クラスで実装されている純粋仮想関数を呼びたいのですが、不可能でしょうか?
これが出来ると基底クラスのコンストラクタを再利用出来るし、違う処理(初期化)が必要な部分は
仮想関数の実装を変えるだけでいいので便利だと思ったのですが。
0016デフォルトの名無しさん
2008/05/14(水) 21:52:47できません
基底クラスのコンストラクタ実行中は派生クラスは未構築だからです
0017デフォルトの名無しさん
2008/05/14(水) 22:10:34やはりダメですか・・・
うーん。自分の設計が悪いせいか、基底クラスのコンストラクタ今一役立たずだな・・・
■ このスレッドは過去ログ倉庫に格納されています