08/08/17 22:47:11
__thiscallとか移植性ないんだからやめろよ
295:デフォルトの名無しさん
08/08/17 22:48:29
boost::ptr_funでも使ってポリモーフィズムすりゃいいんじゃね?
296:デフォルトの名無しさん
08/08/17 22:49:16
boost::ptr_vectorだったorz
297:デフォルトの名無しさん
08/08/18 14:43:56
#include <iostream>
void (**(**func)())();
void func3();
void func4();
int main()
{
void (**(func1()))();
void (**func2)();
func = new (void (**(*[1])())());
func[0] = func1;
func2 = func[0]();
func2[0]();
func2[1]();}
void (**(func1()))(){
void (**func)() = new (void (*[2])());
func[0] = func3;
func[1] = func4;
return func;
}
void func3(){
std::cout << "func3() " << std::endl;
}
void func4(){
std::cout << "func4() " << std::endl;
}
298:デフォルトの名無しさん
08/08/18 20:58:41
>>297
これ何?
299:デフォルトの名無しさん
08/08/18 21:01:21
自分で考えろカス
300:デフォルトの名無しさん
08/08/18 21:06:06
いやそういう意味ではなくて、何の質問もないのに関数への
ポインタとか関数へのポインタを返す関数へのポインタとかの
ソースをいきなり貼られてるのは何の意味があるのかと思って。
301:デフォルトの名無しさん
08/08/18 21:19:30
それなら「ない」
302:デフォルトの名無しさん
08/08/18 21:20:20
>>297
なんか言えよ
303:デフォルトの名無しさん
08/08/18 21:22:36
void (**(func1()))();
こんな関数のプロトタイプ宣言初めてみたぞ。
まあ書けばいくらでも複雑に書けるんだろうけど、
デザパタの生成パターンでもこんな書き方はしないし。
304:デフォルトの名無しさん
08/08/18 21:56:09
何故括弧を一つ増やしたし
305:デフォルトの名無しさん
08/08/19 07:30:48
c/c++で開発経験者にお聞きしたいのですが、
コボルみたいにコードインスペクションは現場でやりますか
また、ソースを読み上げたりハードコピーにマーカーでチェック、机上チェックなんかも
やったりしますか?
306:デフォルトの名無しさん
08/08/19 07:33:51
BSD socketでsendしてerrno:9が帰る場合考えられる原因ってなんなんでしょうか。
char *c;
strcpy(c,str);
printf("Sending:%s¥n",c);
int checker=send(socketID, c, strlen(c), 0);
if(checker == -1){
NSLog([NSString stringWithFormat:@"Send Error:%d",errno]);
return 2;
}
return 0;
307:306
08/08/19 07:37:57
Obj-CのNSLog();使ってエラー表示させてるけどそこは気にしない方向でお願いします。
NSLog([NSString stringWithFormat:@"Send Error:%d",errno]);
は
printf("Send Error:%d¥n",errno);
とほぼ同じです。
308:デフォルトの名無しさん
08/08/19 07:44:27
>>306
#define EBADF 9 /* Bad file number */
ならsocketIDが無効
socket( )の戻り値は確認してる?
309:デフォルトの名無しさん
08/08/19 07:54:04
>>306
数値の意味がわからないなら文字列にすれば
NSLog([NSString stringWithFormat:@"Send Error:%s", strerror(errno)]);
310:306
08/08/19 08:15:49
>>308
ありがとうございます。
socket()の戻り値は確認していて、connect()及びrecv()は問題なく行えています。
socketIDがガベージコレクションで解放されちゃったのかもしれないのでその辺りで探ってみます。
>>309
文字列にできたんですか。ありがとうございます。
311:デフォルトの名無しさん
08/08/19 09:07:33
関係ないけど7bit asciiのみなら
NSLog(@"format",...);
って書けた気がする。
312:デフォルトの名無しさん
08/08/19 23:22:50
>>305
プロジェクトの性質によって色々だとは思うが、
絶対ないと断言できるのは「読み上げ」だな。
やれるもんならやってみろ。
313:デフォルトの名無しさん
08/08/19 23:39:10
>>305
>ソースを読み上げたりハードコピーにマーカーでチェック、机上チェック
そんなアナクロなこと、COBOLでだってやりませんよ。
314:デフォルトの名無しさん
08/08/19 23:53:35
>>305
俺は「コードレビュー」はやったことはある
紙の無駄だけどプリントアウトしたソース使って
ただ、(若手の)教育と(協力会社さんなどの)スキル把握(もちろん
悪いところは直してもらう)が主な目的だったんで、約束事として
つねにやってたわけじゃない