タグ

2012年8月29日のブックマーク (8件)

  • std::stringからNSStringへの変換 - Faith and Brave - C++で遊ぼう

    inline NSString* toNSString(const std::string& s) { return [[[NSString alloc] initWithCString:s.c_str() encoding:NSUTF8StringEncoding] autorelease]; } # はてなのスーパーpre記法に「objcpp」があったりします

    std::stringからNSStringへの変換 - Faith and Brave - C++で遊ぼう
    mk18
    mk18 2012/08/29
  • Objective-C++0xなう - 簡潔なQ

    Objective-Cとは SmalltalkのOOPをC言語にくっつけた、Mac王国の公用語。 Objective-C++とは Objective-CとC++をとりあえず一緒にした謎言語。 Objective-C++0x(造語)とは Objective-C++C++0xを有効にした超言語。 Install(Ubuntu) % sudo aptitude install gobjc++ Makefile #!/bin/make CXX = g++ CXXFLAGS = -O2 -Wall -std=c++0x LDFLAGS = -lobjc OBJS = hello .PHONY: all clean .SUFFIXES: .mm .o .mm: $(CXX) $(LDFLAGS) $(CXXFLAGS) $< -o $@ .mm.o: $(CXX) $(CXXFLAGS) -c $<

    Objective-C++0xなう - 簡潔なQ
    mk18
    mk18 2012/08/29
  • Objective-C++11 - 星一のはてなブログ

    この記事は Mac Dev JP Advent Calendar の参加記事 (6 日目) です。 はじめに この記事では、 Objective-C++C++11 を使用する例について紹介します。 Objective-C++ とは Objective-C++ は、プログラミング言語 Objective-C と C++ とを多重継承したような言語です。お互いの文法がかち合わないので、混在することができます。極稀に文法がコンフリクトしますが、個人的にはそれで困ったことはありません。文法的にほぼ直交し、お互いのオブジェクトを単なるポインタ値とみなしているため、混在させることができるのです。 Objective-C と C++ の機能をオーバーラップさせるようなことはできません。例えば、 Objective-C のクラスを C++ で継承したりするようなことはできません。 Objective

    Objective-C++11 - 星一のはてなブログ
    mk18
    mk18 2012/08/29
  • Android情報サイト「アンドロイダー」が不正アプリ防止を強化――パトロール隊員を公募

    アンドロイダーが、同社が企画・運営するAndroid情報サイト「アンドロイダー」(http://androider.jp/)において、不正アプリ防止に向けたバージョンアップを行う。公開は10月1日から。 不正アプリ防止への取り組みとして、アプリ開発者であるデベロッパーの身元確認を行う「公認デベロッパー制度」を開始する。個人デベロッパーは申込書と身分証明書コピー、電話/郵送による人確認を実施。法人デベロッパーに関しては、社判を捺印した申込書と電話/郵送による人確認を行い、制作者の顔が見えるアプリの情報提供の場を作るという。 また、公認デベロッパーが開発したアプリに対しては、情報保護に効果的なパーミッションを中心としたセキュリティやウイルスチェックをはじめ、人力でも1つ1つ確認。さらに不正アプリの発見やデベロッパーへ情報発信する「隊員」をサイト内で募集していく。 公認デベロッパー、セキュリ

    Android情報サイト「アンドロイダー」が不正アプリ防止を強化――パトロール隊員を公募
    mk18
    mk18 2012/08/29
    作業してもらっても、それに見合った対価がもらえるのかな?ボランティアベースなら破綻しそう
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    mk18
    mk18 2012/08/29
    CSample obj; // ここでコンストラクタ呼び出し
  • 目指せプログラマー!

    目指せプログラマー!にようこそ。 当サイトはこちらに引っ越しました。 お手数をおかけしますが、上記サイトへご移動くださいませ。

    mk18
    mk18 2012/08/29
    デストラクタは仮想とするべきである。
  • C++では基底クラスにvirtualデストラクタを書こう - *「ふっかつのじゅもんがちがいます。」withぬこ

    (追記あり/再追記あり) ブクマ経由で、C++で演算子オーバーロードしたときの演算子決定基準について調べたというのを見たのだけど、書いてあるサンプルコードが演算子オーバーロード以前にちょっとダメだった。 昔書いたテストコードと書いてあるので、今は分かってるのかもしれないけど、ある程度経験を積んだC++プログラマは絶対に(というのは言いすぎでした)virtualデストラクタのないクラスを継承しない(追記やTBやブコメの議論を参照のこと)ので、このサンプルコードを載せて違和感を感じない時点で、演算子オーバーロードをいじるよりもまずはEffective C++を読んだ方がよい。 何がダメか。以下のように、virtualデストラクタがないクラスを継承している。これはダメだ。例え基底クラスのデストラクタですべきことがないのだとしても、継承するつもりのあるクラスにはvirtualデストラクタを作らない

    C++では基底クラスにvirtualデストラクタを書こう - *「ふっかつのじゅもんがちがいます。」withぬこ
    mk18
    mk18 2012/08/29
  • FAQ形式でデストラクタにvirtualを付ける理由をまとめてみた - かせいさんとこ

    Q1: デストラクタにvirtualをつけろとよく言われるけど、なんで? 挙動が未定義のdeleteを呼び出す可能性があるから Q2: 挙動が未定義だと駄目なの? 超駄目。何が起きても文句は言えない Q3: どんな時に挙動が未定義のdeleteが呼び出されるの? こんなとき // NoVirtualBaseClass : デストラクタにvirtualを持たない // NoVirtualSuperClass : NoVirtualBaseClassを継承 NoVirtualBaseClass * ptr = new NoVirtualSuperClass(); // 挙動が未定義 delete ptr; Q4: 何でそうなるの? delete時点で、ptrは自分がNoVirtualBaseClassのインスタンスだと思ってるから Q5: 何で?NoVirtualSuperClassでnewし

    FAQ形式でデストラクタにvirtualを付ける理由をまとめてみた - かせいさんとこ
    mk18
    mk18 2012/08/29
    難しいわ