忍者ブログ

神戸電子専門学校ゲームソフト学科の生徒が運営するGESのブログです。

   

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

void*を使ってみる



どうも、uncleです
このGESブログはアクセス解析が出来るんですが自分の記事があまり伸びずどうしたものかと悩んでおります
書いてほしい記事などあればお気軽にどうぞ

まぁそんな話は置いておいて今回はみなさんお馴染みの「void」のポインタ型について考えます
今回は短めの記事です

拍手[1回]




まずvoidってなんだってことなんですがMicrosoftのサイトの方から抜粋させてもらいます
リンク

関数の戻り値の型として void キーワードを使用した場合は、関数が値を戻さないことを示します。 関数のパラメーター リストで void を使用した場合は、関数がパラメーターを受け取らないことを示します。 ポインターの宣言で void を使用した場合は、ポインターが "汎用" であることを示します。

ポインター型が void * の場合は、const キーワードまたは volatile キーワードで宣言されていないすべての変数を指し示すことができます。 void ポインターは別の型にキャストしない限り、逆参照できません。 void ポインターは他の型のデータ ポインターに変換できます。

void ポインターは、関数を指すことはできますが、C++ のクラス メンバーを指すことはできません。

void 型の変数を宣言することはできません。



はい、解説ありがとうございます
おかげで楽が出来ました
今回は上記の赤文字部分の解説をします

何が出来るのかと言うと上記の通りで汎用的なポインターとして使用できます
では例を見てみましょう


今回はint*をvoid*型にキャストしました

この他にもcharやfloatなどの各型、構造体、関数やクラスのポインタなどがvoid*型にキャストすることが出来ます

しかしvoid*のままでは使用できず、元々の型にキャストし直してやる必要性があります

まぁC++の場合にはテンプレートなどがあるので使用する機会は少ないかもしれませんね
Cとの互換性を持たせたままコーディングする必要があるときなんかにはお世話になるかもしれませんね







PR

COMMENT

NAME
TITLE
MAIL(非公開)
URL
EMOJI
Vodafone絵文字 i-mode絵文字 Ezweb絵文字
COMMENT
PASS(コメント編集に必須です)
SECRET
管理人のみ閲覧できます

無題

  • by 某卒業生
  • 2015/09/10(Thu)23:04
  • Edit
プログラムの技術関連もいいけど、もっとゲーム制作に絡む記事があってもいいかも(1年生向けに

No Title

  • by uncle
  • 2015/09/12(Sat)10:19
  • Edit
コメントありがとうございます!
そうですね、確かにもっとゲーム制作に寄せた記事の方が興味を持ってくれそうですね、アドバイスありがとうございます!

ブログ内検索

最新コメント

[01/29 人面犬]
[10/01 8ch]
[09/12 uncle]
[09/10 某卒業生]
[06/07 uncle]

カレンダー

10 2024/11 12
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

テスト

Copyright ©  -- GESブログ --  All Rights Reserved
Design by CriCri / Photo by Geralt / powered by NINJA TOOLS / 忍者ブログ / [PR]