c++中在引數
// const_error.cpp : 定義控制台應用程式的入口點。
//#include "stdafx.h"
#include
#include
using namespace std;
using std::string;
string::size_type find_char(string &s,char c)
{string::size_type i=0;
while(i
int _tmain(int argc, _tchar* ar**)
{//string in="hello world";
string::size_type re=find_char("hello world",'o');
cout《以上**中 find_char第乙個引數使用了string引用,導致main在使用字串實參時,無法將字串字面值轉換為引用,會導致編譯錯誤。需要先將字串字面值複製給乙個string變數,方可使用。
如將in定義const string則會報錯error c2664: 「find_char」: 不能將引數 1 從「const std::string」轉換為「std::string &」
如將形參修改為sting s,則不會報告以上問題。
臨時變數 引用引數和const
好久沒更了,紀念我的日語n5上冊書學成,更一篇博文。甚是開心!在現代c 中,僅當引數為const引用時,如果實參與引用引數不匹配,c 將生成臨時變數。詳細說來生成臨時變數有兩種情況 實參的型別正確,但不是左值實參的型別不正確,但可以轉換為正確的型別 ps1.左值引數是可被引用的資料物件,例如變數 陣...
引用 const引用和非const引用
引用構造了物件的乙個同義詞,是c 物件的另乙個名字。在實際程式中,引用的主要作用是作函式的形參。引用是一種復合型別1,它通過在變數名前新增 來定義。在使用引用的情況下,每一種引用型別都關聯到某一其他型別。c 不能定義引用型別的引用,但是可以定義任何其他型別的引用。int a 100 int refa...
C 引用 const 引用
通過引用修改它指向變數的值 也就是說 通過修改 b 達到修改 a 的目的,也可以修改a int a 5 int b a b 40 int c b 此時a b c 40 例項1 宣告 double getarea int num 呼叫 double area this getarea 30 1 將30...