目前分類:c++ (19)

瀏覽方式: 標題列表 簡短摘要
當 cin 無法把輸入的資料成功的轉換成你所設定的類型是, cin 內部設為錯誤狀態, 而無法轉換的資料還在 input buffer 裡.

當讀取資料時, 應該檢查 cin 的 state, 並在有錯誤時處理:

Felix 發表在 痞客邦 留言(0) 人氣()

  • Mar 17 Mon 2008 14:32
  • vector

vector 亦可作為函數的參數例如
void   test(const   vector<int>   &v)
您可以使用vector來替代陣列,並使用陣列型式(Array idiom)的方式來操作vector,要使用vector,必須含入vector表頭檔:

Felix 發表在 痞客邦 留言(0) 人氣()

一.计算机中随机数的产生
现在,在计算机,用来产生随机数的算法是"线性同余"法。所谓线性同余,其实就是下面两个式子。假设I就是一个随机数的序列,Ij+1与Ij的关系如下:
Ij+1 =Ij * a+c  (mod m)

Felix 發表在 痞客邦 留言(0) 人氣()

一般人看到【取亂數不重複】..很直接的想法就是一直取,每次取完之後再跟之前的比較..
其實這樣的效率極差!取N個不重複的亂數需要做N階乘次比對..
有學過資料結構的應該都知道.在複雜度裡面..N階乘算是【極差】

Felix 發表在 痞客邦 留言(1) 人氣()

所谓的“伪随机数”指的并不是假的随机数,这里的“伪”是有规律的意思。其实绝对的随机数只是一种理想状态的随机数,计算机只能生成相对的随机数即伪随机数。计算机生成的伪随机数既是随机的又是有规律的 —— 一部份遵守一定的规律,一部份则不遵守任何规律。比如“世上没有两片形状完全相同的树叶”,这正点到了事物的特性 —— 规律性;但是每种树的叶子都有近似的形状,这正是事物的共性 —— 规律性。从这个角度讲,我们就可以接受这样的事实了:计算机只能产生伪随机数而不是绝对的随机数。

C++中的标准库<cstdlib>(包含在<iostream>中)提供两个帮助生成伪随机数的函数:rand()和srand()。

Felix 發表在 痞客邦 留言(0) 人氣()

●英中繁简编程术语对照

英文             台湾惯用术语                   大陆惯用术语

Felix 發表在 痞客邦 留言(0) 人氣()

在使用C++编程时,经常要用到不同数据类型之间的类型转换,可能大家对C语言的类型强制转换比较熟悉,就是在表达时前面加一个“(强制转换类型)”。在 C++中仍然可以用C方式的对不同类之间数据类型转换,但是,C++提供了更好的数据类型转换方式,就是利用关键字“dynamic_cast”来完成对 不同类之间数据类型之间的转换。

dynamic_cast的使用格式是:

Felix 發表在 痞客邦 留言(0) 人氣()

Felix 發表在 痞客邦 留言(0) 人氣()

const int * pOne;
int * const pTwo;
const int * const pThree;

Felix 發表在 痞客邦 留言(0) 人氣()

 如果我们对一个非字符的指针进行操作,方法是这样的:

  定义:int a=7; int *p=&a; 或者 int a=7; int *p; p=&a; 或者 int a=7; int *p; *p=a;

Felix 發表在 痞客邦 留言(0) 人氣()

ctype 中的字符函数

isalnum()    如果参数为字母数字,则返回ture

Felix 發表在 痞客邦 留言(0) 人氣()

cin<<
cin.get()
cin.getline()

Felix 發表在 痞客邦 留言(1) 人氣()

Linux下搭建C/C++开发环境

Linux除了默认装了gcc和文本编辑器外,没有可供利用的IDE,当然这比windows已经好多了,至少有个gcc,学习在linux下的编程,一 般的高手都推荐就用以上这两个工具,在用个make,gdb什么的就好了。但对于初学者,尤其是在windows下用惯了VC,VB之类的IDE的同志们 来说,仅仅用命令行的方式,是在是有点打击热情,尤其是gdb,几乎是把断点,程序之类的要全记在脑子里,出了错也不好改,找就找很长时间。

Felix 發表在 痞客邦 留言(0) 人氣()

陈皓

概述

Felix 發表在 痞客邦 留言(0) 人氣()

嵌入式工具Qt的安装与使用

摘要

Felix 發表在 痞客邦 留言(0) 人氣()

构造函数后面的冒号(:)是起到分割做用,是类中给成员变量赋值的方法,更适用于成员变量为常量const型的。类子
>Error(const char* theWhere,const char* theWhy):
>why(theWhy),where(theWhere){}

Felix 發表在 痞客邦 留言(0) 人氣()

\t的作用相当与按Tab键8个字符一个隔段
就是按第一下tab會跳到第9個格,第二下會跳到17個
每八個字符就會隔一行..

Felix 發表在 痞客邦 留言(0) 人氣()

整合開發環境(簡稱IDEIntegrated Develop Environment)。

由於編譯語言需要經由撰寫、編譯、連結、除錯、執行等過程,而早期的編譯語言中,負責這幾部分的軟體都各自獨立,使得編譯語言不如直譯語言來得方便。但目前多數的高階程式語言都已經採用IDE方式,將編輯器(Editor)、編譯器(Compiler)、連結器(Linker)、除錯器(Debugger)、執行(Execution)等功能整合在同一套軟體中,使得程式發展的各項操作更加容易。

Felix 發表在 痞客邦 留言(0) 人氣()

Felix 發表在 痞客邦 留言(3) 人氣()