C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

ユーザー定義データ型用に設定されたC++


ここでは、ユーザー定義のデータ型のセットを作成する方法を説明します。セットはC++STLに存在します。これは特殊なタイプのデータ構造であり、データをソートされた順序で格納でき、重複入力をサポートしていません。 setは任意のタイプのデータに使用できますが、ここでは、ユーザー定義のデータ型にもsetを使用する方法を説明します。

ユーザー定義のデータ型をスタックに使用するには、その型の2つの値を比較できる<演算子をオーバーライドする必要があります。これが存在しない場合、2つのオブジェクトを比較できないため、セットはデータを並べ替えられた順序で格納できないため、例外が発生します。

#include <iostream>
#include<set>
using namespace std;
class Student {
   int id, marks;
   public:
   Student(int id, int marks){
      this->id = id;
      this->marks = marks;
   }
   bool operator <(const Student& st) const{ //sort using id,
      return (this->id < st.id);
   } void display() const{
      cout << "(" << id << ", " << marks << ")\n";
   }
};
main() {
   Student s1(5, 70), s2(3, 86), s3(2, 91), s4(2, 60), s5(1, 78), s6(6, 53), s7(4, 59);
   //the set will not consider duplicate id
   set<Student> st_set;
   st_set.insert(s1);
   st_set.insert(s2);
   st_set.insert(s3);
   st_set.insert(s4);
   st_set.insert(s5);
   st_set.insert(s6);
   st_set.insert(s7);
   set<Student>::iterator it;
   for(it = st_set.begin(); it != st_set.end(); it++){
      it->display();
   }
}

出力

(1, 78)
(2, 91)
(3, 86)
(4, 59)
(5, 70)
(6, 53)

  1. C ++のブール値の型指定子は何ですか?

    c++でのブール値の型指定子はboolです。 -として使用できます bool myBoolean = true;

  2. C#で動的データ型を定義する方法

    動的データ型変数には、任意のタイプの値を格納できます。これらのタイプの変数のタイプチェックは、実行時に行われます。 C#4.0では、コンパイル時の型チェックを回避する動的型が導入されました。 動的型を宣言するための構文は次のとおりです- dynamic <variable_name> = value; 動的型は、オブジェクト型変数の型チェックがコンパイル時に行われるのに対し、動的型変数の型チェックは実行時に行われることを除いて、オブジェクト型に似ています。 例を見てみましょう- dynamic a = 25; 動的変数のタイプを取得するには- 例 using System;