C 構造体 新しいページはコチラ
提供: yonewiki
(→構造体) |
|||
| 6行: | 6行: | ||
| − | + | なんか、難しい言葉を並べましたけど、難しいことをするときと、単純にひとまとめにするときに使うということが伝われば、まぁそれでよしとします。自分みたいなアホなプログラマは構造体なんて使うとあとで、関数のデータの引数として使うときに面倒だったりするんで、安易にはあんまり使わないのは自分流ですね。良い子のプログラマは真似しちゃいけないと思う。バラバラに分けていると訳わからんくなるという負の効果も抜群です。 | |
| 12行: | 12行: | ||
以下のようにして日付構造体を自分で作ったりできます。 | 以下のようにして日付構造体を自分で作ったりできます。 | ||
| + | <syntaxhighlight lang="cpp" line start="1"> | ||
| + | int main() { | ||
| + | struct stDate{ | ||
| + | int year; | ||
| + | int month; | ||
| + | int day; | ||
| + | }; | ||
| + | stDate stDateTest;//stDateTestっていう名前でstDate構造体変数を作った。 | ||
| + | //構造体変数への数値の代入 | ||
| + | stDateTest.year = 2015; | ||
| + | stDateTest.month = 2; | ||
| + | stDateTest.day = 3; | ||
| − | + | int nYear; | |
| + | nYear = stDateTest.year; //使うときも同じ | ||
| + | return 0; | ||
| + | } | ||
| + | |||
| + | </syntaxhighlight> | ||
| + | っていうのが基本らしい。んで、これだけで構造体の勉強を終えてしまうと、痛い目に合うらしい。 | ||
| + | |||
| + | |||
| + | 構造体変数名.構造体の中の要素の名前 | ||
| + | |||
| + | |||
| + | ってな具合にドットで繋ぐような感じで指定する。こういうのを選択演算子って呼ぶ。「構造体の中の要素の名前」って表現したけど、構造体の要素の変数はメンバ名っていうし、関数の場合はメンバ関数って呼ぶ。この辺は後で出てくるクラスって奴と同じかな。クラスの事を少し知っている人にはなじみやすいし、あとでクラスを勉強するときにもわかりやすいね。 | ||
| + | |||
| + | |||
| + | 本気で使うとなるともっと難しくなります。数学と一緒で基本は簡単なのに、わかったつもりで次のページをめくっていくとわからなくなるというそういう要素を含んでいるのが構造体だと思います。オレは使わないからあんまり関係ねぇとか、舐(な)めてると怪我します。 | ||
なんのために構造体を使うのか、どういう具合に使うものなのか?そこまで理解してこそのプログラミング技術。そんなスタンスで謙虚に学ぼうという姿勢を崩さないのが大事。一流のプログラマ(例えば数人で起業したGoogleの人たちみたいな)になるには、道は果てしなく遠く、ちょっとパソコンで簡単なプログラミングができるレベルの人がわんさかいる現状を考えれば、基本の技術を以下に応用できるのか?そういうところが大事なのです。自分も構造体はいまだに使いこなせていないと思っていますし…。謙虚に。謙虚に。構造体で実現されているpairとかのソースを見ると、あぁコレってすげぇなって感じると思う。 | なんのために構造体を使うのか、どういう具合に使うものなのか?そこまで理解してこそのプログラミング技術。そんなスタンスで謙虚に学ぼうという姿勢を崩さないのが大事。一流のプログラマ(例えば数人で起業したGoogleの人たちみたいな)になるには、道は果てしなく遠く、ちょっとパソコンで簡単なプログラミングができるレベルの人がわんさかいる現状を考えれば、基本の技術を以下に応用できるのか?そういうところが大事なのです。自分も構造体はいまだに使いこなせていないと思っていますし…。謙虚に。謙虚に。構造体で実現されているpairとかのソースを見ると、あぁコレってすげぇなって感じると思う。 | ||